diff options
Diffstat (limited to 'sources/shiboken6/ApiExtractor/docparser.cpp')
| -rw-r--r-- | sources/shiboken6/ApiExtractor/docparser.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/sources/shiboken6/ApiExtractor/docparser.cpp b/sources/shiboken6/ApiExtractor/docparser.cpp index ea3828a43..9d90d5fb2 100644 --- a/sources/shiboken6/ApiExtractor/docparser.cpp +++ b/sources/shiboken6/ApiExtractor/docparser.cpp @@ -9,7 +9,7 @@ #include "messages.h" #include "modifications.h" #include "reporthandler.h" -#include "typesystem.h" +#include "complextypeentry.h" #include "xmlutils.h" #include <QtCore/QBuffer> @@ -84,6 +84,22 @@ bool DocParser::skipForQuery(const AbstractMetaFunctionCPtr &func) usesRValueReference); } +DocModificationList DocParser::getDocModifications(const AbstractMetaClass* cppClass, + const AbstractMetaFunctionCPtr &func) +{ + auto *te = cppClass->typeEntry(); + if (func.isNull()) + return te->docModifications(); + + DocModificationList result = te->functionDocModifications(); + const QString minimalSignature = func->minimalSignature(); + const auto filter = [&minimalSignature](const DocModification &mod) { + return mod.signature() != minimalSignature; + }; + result.erase(std::remove_if(result.begin(), result.end(), filter), result.end()); + return result; +} + AbstractMetaFunctionCList DocParser::documentableFunctions(const AbstractMetaClass *metaClass) { auto result = metaClass->functionsInTargetLang(); |
