diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2010-09-30 10:54:30 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2012-03-08 16:07:19 -0300 |
commit | 15d595ec399f6e298a4ae7a52f7740ac6d70ccb4 (patch) | |
tree | 5031d361f5c5f776baf7cc096f72daabd786eb34 /generator | |
parent | a001e8538adce84bdd201e897b9309902cdd8458 (diff) |
Shiboken avoids generating code for private enums.
Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
Reviewed by Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'generator')
-rw-r--r-- | generator/cppgenerator.cpp | 16 | ||||
-rw-r--r-- | generator/headergenerator.cpp | 9 |
2 files changed, 17 insertions, 8 deletions
diff --git a/generator/cppgenerator.cpp b/generator/cppgenerator.cpp index 26fea059b..da15c4d4c 100644 --- a/generator/cppgenerator.cpp +++ b/generator/cppgenerator.cpp @@ -385,7 +385,7 @@ void CppGenerator::generateClass(QTextStream &s, const AbstractMetaClass *metaCl foreach (AbstractMetaEnum* cppEnum, metaClass->enums()) { - if (cppEnum->isAnonymous()) + if (cppEnum->isAnonymous() || cppEnum->isPrivate()) continue; bool hasFlags = cppEnum->typeEntry()->flags(); @@ -3326,8 +3326,11 @@ void CppGenerator::writeClassRegister(QTextStream& s, const AbstractMetaClass* m s << INDENT << "PyObject* enum_item;" << endl << endl; } - foreach (const AbstractMetaEnum* cppEnum, metaClass->enums()) + foreach (const AbstractMetaEnum* cppEnum, metaClass->enums()) { + if (cppEnum->isPrivate()) + continue; writeEnumInitialization(s, cppEnum); + } if (metaClass->hasSignals()) writeSignalInitialization(s, metaClass); @@ -3591,7 +3594,7 @@ void CppGenerator::finishGeneration() s << "// Enum definitions "; s << "------------------------------------------------------------" << endl; foreach (const AbstractMetaEnum* cppEnum, globalEnums()) { - if (cppEnum->isAnonymous()) + if (cppEnum->isAnonymous() || cppEnum->isPrivate()) continue; writeEnumDefinition(s, cppEnum); s << endl; @@ -3674,8 +3677,11 @@ void CppGenerator::finishGeneration() s << INDENT << "PyObject* enum_item;" << endl << endl; } - foreach (const AbstractMetaEnum* cppEnum, globalEnums()) - writeEnumInitialization(s, cppEnum); + foreach (const AbstractMetaEnum* cppEnum, globalEnums()) { + if (cppEnum->isPrivate()) + continue; + writeEnumInitialization(s, cppEnum); + } // Register primitive types on TypeResolver s << INDENT << "// Register primitive types on TypeResolver" << endl; diff --git a/generator/headergenerator.cpp b/generator/headergenerator.cpp index 095febb70..f9384d58e 100644 --- a/generator/headergenerator.cpp +++ b/generator/headergenerator.cpp @@ -281,8 +281,11 @@ void HeaderGenerator::writeTypeIndexDefine(QTextStream& s, const AbstractMetaCla if (!metaClass->typeEntry()->generateCode()) return; writeTypeIndexDefineLine(s, metaClass->typeEntry(), idx); - foreach (const AbstractMetaEnum* metaEnum, metaClass->enums()) + foreach (const AbstractMetaEnum* metaEnum, metaClass->enums()) { + if (metaEnum->isPrivate()) + continue; writeTypeIndexDefineLine(s, metaEnum->typeEntry(), idx); + } } void HeaderGenerator::finishGeneration() @@ -321,7 +324,7 @@ void HeaderGenerator::finishGeneration() macrosStream << "// Macros for type check" << endl; foreach (const AbstractMetaEnum* cppEnum, globalEnums()) { - if (cppEnum->isAnonymous()) + if (cppEnum->isAnonymous() || cppEnum->isPrivate()) continue; includes << cppEnum->typeEntry()->include(); writeTypeConverterDecl(convDecl, cppEnum->typeEntry()); @@ -338,7 +341,7 @@ void HeaderGenerator::finishGeneration() includes << classType->include(); foreach (const AbstractMetaEnum* cppEnum, metaClass->enums()) { - if (cppEnum->isAnonymous()) + if (cppEnum->isAnonymous() || cppEnum->isPrivate()) continue; EnumTypeEntry* enumType = cppEnum->typeEntry(); includes << enumType->include(); |