diff options
author | Renato Araujo Oliveira Filho <renato.araujo@kdab.com> | 2020-04-15 14:10:43 -0300 |
---|---|---|
committer | Renato Araujo Oliveira Filho <renato.araujo@kdab.com> | 2020-09-02 10:48:05 -0300 |
commit | 61d1a5af4e6f17da32e302023b8a4358bccf5863 (patch) | |
tree | c8a11be5b2bb6699e8b595d587ba2a4ca169a3c3 /sources/shiboken2/generator | |
parent | fc58517056f74a1f49674a81710cb0b07a8abf2e (diff) |
Skip sphinx indexing for functions with multiple signatures
Avoid duplicate functions on sphinx index for functions with multiple
signature
Change-Id: I1394657ff6e1978f65bacbab617972d04cac8aaa
Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken2/generator')
-rw-r--r-- | sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp | 11 | ||||
-rw-r--r-- | sources/shiboken2/generator/qtdoc/qtdocgenerator.h | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp index 4ddcae83b..a9413607d 100644 --- a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp +++ b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp @@ -1667,6 +1667,7 @@ void QtDocGenerator::generateClass(QTextStream &s, const GeneratorContext &class writeFields(s, metaClass); + QStringList uniqueFunctions; for (AbstractMetaFunction *func : qAsConst(functionList)) { if (shouldSkip(func)) continue; @@ -1676,7 +1677,8 @@ void QtDocGenerator::generateClass(QTextStream &s, const GeneratorContext &class else s << ".. method:: "; - writeFunction(s, metaClass, func); + writeFunction(s, metaClass, func, !uniqueFunctions.contains(func->name())); + uniqueFunctions.append(func->name()); } writeInjectDocumentation(s, TypeSystem::DocModificationAppend, metaClass, nullptr); @@ -2104,12 +2106,15 @@ void QtDocGenerator::writeFunctionParametersType(QTextStream &s, const AbstractM } void QtDocGenerator::writeFunction(QTextStream& s, const AbstractMetaClass* cppClass, - const AbstractMetaFunction* func) + const AbstractMetaFunction* func, bool indexed) { - s << functionSignature(cppClass, func) << "\n\n"; + s << functionSignature(cppClass, func); { Indentation indentation(INDENT); + if (!indexed) + s << QLatin1Char('\n') << INDENT << QLatin1String(":noindex:"); + s << "\n\n"; writeFunctionParametersType(s, cppClass, func); const auto version = versionOf(func->typeEntry()); if (!version.isNull()) diff --git a/sources/shiboken2/generator/qtdoc/qtdocgenerator.h b/sources/shiboken2/generator/qtdoc/qtdocgenerator.h index e4067cc6f..468abd599 100644 --- a/sources/shiboken2/generator/qtdoc/qtdocgenerator.h +++ b/sources/shiboken2/generator/qtdoc/qtdocgenerator.h @@ -252,7 +252,7 @@ private: void writeArguments(QTextStream &s, const AbstractMetaClass *cppClass, const AbstractMetaFunction *func); QString functionSignature(const AbstractMetaClass* cppClass, const AbstractMetaFunction* func); void writeFunction(QTextStream& s, const AbstractMetaClass* cppClass, - const AbstractMetaFunction* func); + const AbstractMetaFunction* func, bool indexed = true); void writeFunctionParametersType(QTextStream &s, const AbstractMetaClass *cppClass, const AbstractMetaFunction* func); void writeFunctionList(QTextStream& s, const AbstractMetaClass* cppClass); |