aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/ApiExtractor/apiextractor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sources/shiboken6/ApiExtractor/apiextractor.cpp')
-rw-r--r--sources/shiboken6/ApiExtractor/apiextractor.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/sources/shiboken6/ApiExtractor/apiextractor.cpp b/sources/shiboken6/ApiExtractor/apiextractor.cpp
index f429b7dee..8e4501c74 100644
--- a/sources/shiboken6/ApiExtractor/apiextractor.cpp
+++ b/sources/shiboken6/ApiExtractor/apiextractor.cpp
@@ -27,6 +27,7 @@
****************************************************************************/
#include "apiextractor.h"
+#include "apiextractorresult.h"
#include "abstractmetalang.h"
#include <QDir>
@@ -146,18 +147,6 @@ const AbstractMetaClassList &ApiExtractor::smartPointers() const
return m_builder->smartPointers();
}
-std::optional<AbstractMetaEnum>
- ApiExtractor::findAbstractMetaEnum(const TypeEntry* typeEntry) const
-{
- return m_builder->findEnum(typeEntry);
-}
-
-int ApiExtractor::classCount() const
-{
- Q_ASSERT(m_builder);
- return m_builder->classes().count();
-}
-
// Add defines required for parsing Qt code headers
static void addPySideExtensions(QByteArrayList *a)
{
@@ -176,7 +165,7 @@ static void addPySideExtensions(QByteArrayList *a)
a->append(QByteArrayLiteral("-DQSIMD_H"));
}
-bool ApiExtractor::run(bool usePySideExtensions)
+bool ApiExtractor::runHelper(bool usePySideExtensions)
{
if (m_builder)
return false;
@@ -233,6 +222,19 @@ bool ApiExtractor::run(bool usePySideExtensions)
return result;
}
+std::optional<ApiExtractorResult> ApiExtractor::run(bool usePySideExtensions)
+{
+ if (!runHelper(usePySideExtensions))
+ return {};
+ ApiExtractorResult result;
+ result.m_metaClasses = m_builder->classes();
+ result.m_smartPointers = m_builder->smartPointers();
+ result.m_globalFunctions = m_builder->globalFunctions();
+ result.m_globalEnums = m_builder->globalEnums();
+ result.m_enums = m_builder->typeEntryToEnumsHash();
+ return result;
+}
+
LanguageLevel ApiExtractor::languageLevel() const
{
return m_languageLevel;