diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2019-11-14 11:28:14 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2019-12-05 15:49:20 +0100 |
commit | 96d8bc01639c3ef83d16a45428758aa0e4420165 (patch) | |
tree | 907068ddb4e2651b43a29ae81e559211a4c8048f /sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp | |
parent | d0fbcc90bd02090f921313dafecba20065fb2eb5 (diff) |
shiboken: Add a way of specifying system includes to be parsed
Task-number: PYSIDE-454
Change-Id: I9302cf74544315875a65bc09b75741c7fe6399e8
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Diffstat (limited to 'sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp')
-rw-r--r-- | sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp b/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp index edb7a58f7..78f34c87f 100644 --- a/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp +++ b/sources/shiboken2/ApiExtractor/clangparser/clangbuilder.cpp @@ -222,6 +222,7 @@ public: FunctionModelItem m_currentFunction; ArgumentModelItem m_currentArgument; VariableModelItem m_currentField; + QByteArrayList m_systemIncludes; int m_anonymousEnumCount = 0; CodeModel::FunctionType m_currentFunctionType = CodeModel::Normal; @@ -720,6 +721,12 @@ bool BuilderPrivate::visitHeader(const char *cFileName) const return true; } #endif // Q_OS_MACOS + if (baseName) { + for (const auto &systemInclude : m_systemIncludes) { + if (systemInclude == baseName) + return true; + } + } return false; } @@ -742,6 +749,11 @@ bool Builder::visitLocation(const CXSourceLocation &location) const return result; } +void Builder::setSystemIncludes(const QByteArrayList &systemIncludes) +{ + d->m_systemIncludes = systemIncludes; +} + FileModelItem Builder::dom() const { Q_ASSERT(!d->m_scopeStack.isEmpty()); |