diff options
Diffstat (limited to 'sources/shiboken2/ApiExtractor/abstractmetalang.h')
-rw-r--r-- | sources/shiboken2/ApiExtractor/abstractmetalang.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/sources/shiboken2/ApiExtractor/abstractmetalang.h b/sources/shiboken2/ApiExtractor/abstractmetalang.h index 648c792b3..693ecc4d4 100644 --- a/sources/shiboken2/ApiExtractor/abstractmetalang.h +++ b/sources/shiboken2/ApiExtractor/abstractmetalang.h @@ -1426,6 +1426,8 @@ public: AbstractMetaEnum *findEnum(const QString &enumName); AbstractMetaEnumValue *findEnumValue(const QString &enumName); + void getEnumsToBeGenerated(AbstractMetaEnumList *enumList) const; + void getEnumsFromInvisibleNamespacesToBeGenerated(AbstractMetaEnumList *enumList) const; QString fullName() const { @@ -1476,6 +1478,7 @@ public: QString package() const; bool isNamespace() const; + bool isInvisibleNamespace() const; bool isQObject() const; @@ -1672,6 +1675,9 @@ public: SourceLocation sourceLocation() const; void setSourceLocation(const SourceLocation &sourceLocation); + template <class Function> + void invisibleNamespaceRecursion(Function f) const; + private: #ifndef QT_NO_DEBUG_STREAM void format(QDebug &d) const; @@ -1719,4 +1725,15 @@ private: Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractMetaClass::FunctionQueryOptions) Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractMetaClass::OperatorQueryOptions) +template <class Function> +void AbstractMetaClass::invisibleNamespaceRecursion(Function f) const +{ + for (auto ic : m_innerClasses) { + if (ic->isInvisibleNamespace()) { + f(ic); + ic->invisibleNamespaceRecursion(f); + } + } +} + #endif // ABSTRACTMETALANG_H |