From d927b6530eb03e9690395acb80d39c84353a0da0 Mon Sep 17 00:00:00 2001 From: Renato Araujo Oliveira Filho Date: Wed, 15 Apr 2020 14:07:00 -0300 Subject: Make sure to document class names without constructors Create class doc even if the class do not have a constructor Change-Id: I8bf93ab9a3184b2c810b57f46a0561f391db0eb7 Reviewed-by: Friedemann Kleint Reviewed-by: Christian Tismer --- .../shiboken2/generator/qtdoc/qtdocgenerator.cpp | 42 ++++++++++++---------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp index 0f8c4be26..86c10a8df 100644 --- a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp +++ b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp @@ -1797,25 +1797,29 @@ void QtDocGenerator::writeConstructors(QTextStream& s, const AbstractMetaClass* IndentorBase<1> indent1; indent1.indent = INDENT.total(); - for (AbstractMetaFunction *func : qAsConst(lst)) { - s << indent1; - if (first) { - first = false; - s << sectionTitle; - indent1.indent += sectionTitle.size(); - } - s << functionSignature(cppClass, func) << "\n\n"; - - const auto version = versionOf(func->typeEntry()); - if (!version.isNull()) - s << indent1 << rstVersionAdded(version); - if (func->attributes().testFlag(AbstractMetaAttributes::Deprecated)) - s << indent1 << rstDeprecationNote("constructor"); - - const AbstractMetaArgumentList &arguments = func->arguments(); - for (AbstractMetaArgument *arg : arguments) { - if (!arg_map.contains(arg->name())) { - arg_map.insert(arg->name(), arg); + if (lst.isEmpty()) { + s << sectionTitle << cppClass->fullName(); + } else { + for (AbstractMetaFunction *func : qAsConst(lst)) { + s << indent1; + if (first) { + first = false; + s << sectionTitle; + indent1.indent += sectionTitle.size(); + } + s << functionSignature(cppClass, func) << "\n\n"; + + const auto version = versionOf(func->typeEntry()); + if (!version.isNull()) + s << indent1 << rstVersionAdded(version); + if (func->attributes().testFlag(AbstractMetaAttributes::Deprecated)) + s << indent1 << rstDeprecationNote("constructor"); + + const AbstractMetaArgumentList &arguments = func->arguments(); + for (AbstractMetaArgument *arg : arguments) { + if (!arg_map.contains(arg->name())) { + arg_map.insert(arg->name(), arg); + } } } } -- cgit v1.2.3