aboutsummaryrefslogtreecommitdiffstats
path: root/abstractmetalang.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'abstractmetalang.cpp')
-rw-r--r--abstractmetalang.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/abstractmetalang.cpp b/abstractmetalang.cpp
index 8d25a2319..068256528 100644
--- a/abstractmetalang.cpp
+++ b/abstractmetalang.cpp
@@ -1373,11 +1373,6 @@ const AbstractMetaFunction* AbstractMetaClass::findFunction(const QString& funct
return 0;
}
-/* Returns true if this class has one or more functions that are
- protected. If a class has protected members we need to generate a
- shell class with public accessors to the protected functions, so
- they can be called from the native functions.
-*/
bool AbstractMetaClass::hasProtectedFunctions() const
{
foreach (AbstractMetaFunction *func, m_functions) {
@@ -1387,6 +1382,20 @@ bool AbstractMetaClass::hasProtectedFunctions() const
return false;
}
+bool AbstractMetaClass::hasProtectedFields() const
+{
+ foreach (const AbstractMetaField *field, fields()) {
+ if (field->isProtected())
+ return true;
+ }
+ return false;
+}
+
+bool AbstractMetaClass::hasProtectedMembers() const
+{
+ return hasProtectedFields() || hasProtectedFunctions();
+}
+
bool AbstractMetaClass::generateShellClass() const
{
return m_forceShellClass ||