diff options
author | renatofilho <renato.filho@openbossa.org> | 2010-10-08 15:51:48 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2012-03-09 19:10:11 -0300 |
commit | 99862b71c95e1e061ac743fb864a041fa0a1fbf8 (patch) | |
tree | bfabc643047c934084caa8a5ba9ab0f1d0812977 /abstractmetabuilder.cpp | |
parent | 6ab94ebbe402a92a7587e5b947f821712b6ee605 (diff) |
Implemented support to added functions for TypeAlias.sb-0.8.1
Reviewer: Luciano Wolf <luciano.wolf@openbossa.org>
Lauro Moura <lauro.neto@openbossa.org>
Diffstat (limited to 'abstractmetabuilder.cpp')
-rw-r--r-- | abstractmetabuilder.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/abstractmetabuilder.cpp b/abstractmetabuilder.cpp index 60b687a63..3cdfc1a6b 100644 --- a/abstractmetabuilder.cpp +++ b/abstractmetabuilder.cpp @@ -402,6 +402,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) foreach (ClassModelItem item, typeValues) traverseClassMembers(item); + foreach (NamespaceModelItem item, namespaceTypeValues) traverseNamespaceMembers(item); @@ -1050,6 +1051,8 @@ AbstractMetaClass* AbstractMetaBuilder::traverseTypeAlias(TypeAliasModelItem typ if (!type->include().isValid()) setInclude(type, typeAlias->fileName()); + fillAddedFunctions(metaClass); + return metaClass; } @@ -1425,6 +1428,11 @@ void AbstractMetaBuilder::traverseFunctions(ScopeModelItem scopeItem, AbstractMe } } + fillAddedFunctions(metaClass); +} + +void AbstractMetaBuilder::fillAddedFunctions(AbstractMetaClass* metaClass) +{ // Add the functions added by the typesystem foreach (AddedFunction addedFunc, metaClass->typeEntry()->addedFunctions()) { AbstractMetaFunction* func = traverseFunction(addedFunc); @@ -1440,6 +1448,7 @@ void AbstractMetaBuilder::traverseFunctions(ScopeModelItem scopeItem, AbstractMe func->setDeclaringClass(metaClass); func->setImplementingClass(metaClass); metaClass->addFunction(func); + metaClass->setHasNonPrivateConstructor(true); } } |