diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2024-01-02 15:52:42 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2024-01-05 20:36:16 +0100 |
commit | d5b63f884fce402adb4065cd5f1ab4186d67ce18 (patch) | |
tree | 039ac0e462d021872a7f0eccedfc01bf3feb3553 /sources/shiboken6/generator | |
parent | 19cf526aaa2f1652e07bfcd61b652fa217529893 (diff) |
Documentation: Fix doc modifications for added constructors
Doc modifications for added constructors were not generated at all.
Extract a helper function writeFunctionDocumentation() for this and
use that from writeFunction() and writeConstructors().
This requires making some methods const.
Task-number: PYSIDE-1106
Pick-to: 6.6
Change-Id: I5c13891d51a4a3011c30cfccc5b5a3ea925e6d9d
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Diffstat (limited to 'sources/shiboken6/generator')
-rw-r--r-- | sources/shiboken6/generator/qtdoc/qtdocgenerator.cpp | 26 | ||||
-rw-r--r-- | sources/shiboken6/generator/qtdoc/qtdocgenerator.h | 7 |
2 files changed, 22 insertions, 11 deletions
diff --git a/sources/shiboken6/generator/qtdoc/qtdocgenerator.cpp b/sources/shiboken6/generator/qtdoc/qtdocgenerator.cpp index 03b894df4..bd4f8c064 100644 --- a/sources/shiboken6/generator/qtdoc/qtdocgenerator.cpp +++ b/sources/shiboken6/generator/qtdoc/qtdocgenerator.cpp @@ -568,7 +568,7 @@ void QtDocGenerator::writeConstructors(TextStream &s, const AbstractMetaClassCPt s << '\n'; for (const auto &func : constructors) - writeFormattedDetailedText(s, func->documentation(), scope); + writeFunctionDocumentation(s, func, DocParser::getDocModifications(func, cppClass), scope); } QString QtDocGenerator::formatArgs(const AbstractMetaFunctionCPtr &func) @@ -703,7 +703,7 @@ bool QtDocGenerator::writeDocModifications(TextStream &s, bool QtDocGenerator::writeInjectDocumentation(TextStream &s, TypeSystem::DocModificationMode mode, - const AbstractMetaClassCPtr &cppClass) + const AbstractMetaClassCPtr &cppClass) const { const bool didSomething = writeDocModifications(s, DocParser::getDocModifications(cppClass), @@ -722,7 +722,7 @@ bool QtDocGenerator::writeInjectDocumentation(TextStream &s, TypeSystem::DocModificationMode mode, const DocModificationList &modifications, const AbstractMetaFunctionCPtr &func, - const QString &scope) + const QString &scope) const { const bool didSomething = writeDocModifications(s, modifications, mode, scope); s << '\n'; @@ -905,12 +905,7 @@ void QtDocGenerator::writeFunction(TextStream &s, const AbstractMetaFunctionCPtr s << rstDeprecationNote("function"); } - writeInjectDocumentation(s, TypeSystem::DocModificationPrepend, modifications, func, scope); - if (!writeInjectDocumentation(s, TypeSystem::DocModificationReplace, modifications, func, scope)) { - writeFormattedBriefText(s, func->documentation(), scope); - writeFormattedDetailedText(s, func->documentation(), scope); - } - writeInjectDocumentation(s, TypeSystem::DocModificationAppend, modifications, func, scope); + writeFunctionDocumentation(s, func, modifications, scope); if (auto propIndex = func->propertySpecIndex(); propIndex >= 0) { const QString name = cppClass->propertySpecs().at(propIndex).name(); @@ -926,6 +921,19 @@ void QtDocGenerator::writeFunction(TextStream &s, const AbstractMetaFunctionCPtr } } +void QtDocGenerator::writeFunctionDocumentation(TextStream &s, const AbstractMetaFunctionCPtr &func, + const DocModificationList &modifications, + const QString &scope) const + +{ + writeInjectDocumentation(s, TypeSystem::DocModificationPrepend, modifications, func, scope); + if (!writeInjectDocumentation(s, TypeSystem::DocModificationReplace, modifications, func, scope)) { + writeFormattedBriefText(s, func->documentation(), scope); + writeFormattedDetailedText(s, func->documentation(), scope); + } + writeInjectDocumentation(s, TypeSystem::DocModificationAppend, modifications, func, scope); +} + static QString fileNameToToEntry(const QString &fileName) { constexpr auto rstSuffix = ".rst"_L1; diff --git a/sources/shiboken6/generator/qtdoc/qtdocgenerator.h b/sources/shiboken6/generator/qtdoc/qtdocgenerator.h index dd5bf772b..3820ce38b 100644 --- a/sources/shiboken6/generator/qtdoc/qtdocgenerator.h +++ b/sources/shiboken6/generator/qtdoc/qtdocgenerator.h @@ -69,6 +69,9 @@ private: void writeFunction(TextStream &s, const AbstractMetaFunctionCPtr &func, const AbstractMetaClassCPtr &cppClass = {}, const QString &scope = {}, bool indexed = true); + void writeFunctionDocumentation(TextStream &s, const AbstractMetaFunctionCPtr &func, + const DocModificationList &modifications, + const QString &scope) const; void writeFunctionParametersType(TextStream &s, const AbstractMetaClassCPtr &cppClass, const AbstractMetaFunctionCPtr &func) const; static void writeFunctionToc(TextStream &s, const QString &title, @@ -96,11 +99,11 @@ private: const QString &scope = {}) const; bool writeInjectDocumentation(TextStream &s, TypeSystem::DocModificationMode mode, - const AbstractMetaClassCPtr &cppClass); + const AbstractMetaClassCPtr &cppClass) const; bool writeInjectDocumentation(TextStream &s, TypeSystem::DocModificationMode mode, const DocModificationList &modifications, const AbstractMetaFunctionCPtr &func, - const QString &scope = {}); + const QString &scope = {}) const; bool writeDocModifications(TextStream &s, const DocModificationList &mods, TypeSystem::DocModificationMode mode, const QString &scope = {}) const; |