aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sources/shiboken6/ApiExtractor/docparser.h2
-rw-r--r--sources/shiboken6/ApiExtractor/doxygenparser.cpp11
-rw-r--r--sources/shiboken6/ApiExtractor/doxygenparser.h2
-rw-r--r--sources/shiboken6/ApiExtractor/qtdocparser.cpp10
-rw-r--r--sources/shiboken6/ApiExtractor/qtdocparser.h2
5 files changed, 15 insertions, 12 deletions
diff --git a/sources/shiboken6/ApiExtractor/docparser.h b/sources/shiboken6/ApiExtractor/docparser.h
index 6d458b25a..d64737989 100644
--- a/sources/shiboken6/ApiExtractor/docparser.h
+++ b/sources/shiboken6/ApiExtractor/docparser.h
@@ -27,7 +27,7 @@ public:
DocParser();
virtual ~DocParser();
- virtual void fillDocumentation(const AbstractMetaClassPtr &metaClass) = 0;
+ virtual QString fillDocumentation(const AbstractMetaClassPtr &metaClass) = 0;
virtual void fillGlobalFunctionDocumentation(const AbstractMetaFunctionPtr &f);
virtual void fillGlobalEnumDocumentation(AbstractMetaEnum &e);
diff --git a/sources/shiboken6/ApiExtractor/doxygenparser.cpp b/sources/shiboken6/ApiExtractor/doxygenparser.cpp
index da790015f..c8cae38a5 100644
--- a/sources/shiboken6/ApiExtractor/doxygenparser.cpp
+++ b/sources/shiboken6/ApiExtractor/doxygenparser.cpp
@@ -41,10 +41,10 @@ Documentation DoxygenParser::retrieveModuleDocumentation()
return retrieveModuleDocumentation(packageName());
}
-void DoxygenParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
+QString DoxygenParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
{
if (!metaClass)
- return;
+ return {};
QString doxyFileSuffix;
if (metaClass->enclosingClass()) {
@@ -70,14 +70,14 @@ void DoxygenParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
<< "Can't find doxygen file for class " << metaClass->name() << ", tried: "
<< QDir::toNativeSeparators(documentationDataDirectory())
<< "/{struct|class|namespace}"<< doxyFileSuffix;
- return;
+ return {};
}
QString errorMessage;
XQueryPtr xquery = XQuery::create(doxyFilePath, &errorMessage);
if (!xquery) {
qCWarning(lcShibokenDoc, "%s", qPrintable(errorMessage));
- return;
+ return {};
}
static const QList<std::pair<Documentation::Type, QString>> docTags = {
@@ -166,7 +166,7 @@ void DoxygenParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
//Fields
for (AbstractMetaField &field : metaClass->fields()) {
if (field.isPrivate())
- return;
+ continue;
Documentation fieldDoc;
for (const auto &tag : docTags) {
@@ -196,6 +196,7 @@ void DoxygenParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
meta_enum.setDocumentation(Documentation(doc, {}));
}
+ return doxyFilePath;
}
Documentation DoxygenParser::retrieveModuleDocumentation(const QString& name){
diff --git a/sources/shiboken6/ApiExtractor/doxygenparser.h b/sources/shiboken6/ApiExtractor/doxygenparser.h
index 4f6a9e53c..b32f5d825 100644
--- a/sources/shiboken6/ApiExtractor/doxygenparser.h
+++ b/sources/shiboken6/ApiExtractor/doxygenparser.h
@@ -10,7 +10,7 @@ class DoxygenParser : public DocParser
{
public:
DoxygenParser() = default;
- void fillDocumentation(const AbstractMetaClassPtr &metaClass) override;
+ QString fillDocumentation(const AbstractMetaClassPtr &metaClass) override;
Documentation retrieveModuleDocumentation() override;
Documentation retrieveModuleDocumentation(const QString& name) override;
};
diff --git a/sources/shiboken6/ApiExtractor/qtdocparser.cpp b/sources/shiboken6/ApiExtractor/qtdocparser.cpp
index b72de8b9c..c1377b5b8 100644
--- a/sources/shiboken6/ApiExtractor/qtdocparser.cpp
+++ b/sources/shiboken6/ApiExtractor/qtdocparser.cpp
@@ -299,10 +299,10 @@ void QtDocParser::fillGlobalEnumDocumentation(AbstractMetaEnum &e)
}
}
-void QtDocParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
+QString QtDocParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
{
if (!metaClass)
- return;
+ return {};
auto context = metaClass->enclosingClass();
while (context) {
@@ -320,7 +320,7 @@ void QtDocParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
qCWarning(lcShibokenDoc).noquote().nospace()
<< "Can't find qdoc file for class " << metaClass->name() << ", tried: "
<< QDir::toNativeSeparators(sourceFile.absoluteFilePath());
- return;
+ return {};
}
const QString sourceFileName = sourceFile.absoluteFilePath();
@@ -329,7 +329,7 @@ void QtDocParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
const auto classDocumentationO = parseWebXml(sourceFileName, &errorMessage);
if (!classDocumentationO.has_value()) {
qCWarning(lcShibokenDoc, "%s", qPrintable(errorMessage));
- return;
+ return {};
}
const auto &classDocumentation = classDocumentationO.value();
@@ -384,6 +384,8 @@ void QtDocParser::fillDocumentation(const AbstractMetaClassPtr &metaClass)
qPrintable(msgCannotFindDocumentation(sourceFileName, metaClass, meta_enum, {})));
}
}
+
+ return sourceFileName;
}
bool QtDocParser::extractEnumDocumentation(const ClassDocumentation &classDocumentation,
diff --git a/sources/shiboken6/ApiExtractor/qtdocparser.h b/sources/shiboken6/ApiExtractor/qtdocparser.h
index 74c042a66..afab43944 100644
--- a/sources/shiboken6/ApiExtractor/qtdocparser.h
+++ b/sources/shiboken6/ApiExtractor/qtdocparser.h
@@ -12,7 +12,7 @@ class QtDocParser : public DocParser
{
public:
QtDocParser() = default;
- void fillDocumentation(const AbstractMetaClassPtr &metaClass) override;
+ QString fillDocumentation(const AbstractMetaClassPtr &metaClass) override;
void fillGlobalFunctionDocumentation(const AbstractMetaFunctionPtr &f) override;
void fillGlobalEnumDocumentation(AbstractMetaEnum &e) override;