aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/generator
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-02-16 15:59:02 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-02-19 12:16:32 +0000
commitd2849ea143d251efac5f895e318e6138b76a89ac (patch)
treefc524d3ecd1264533fab0a44ee5a5052d309905b /sources/shiboken2/generator
parent64271ec2d9836d90e3aa1cea2263f89670b4ae5a (diff)
shiboken: Fix loops in QtDocGenerator::writeConstructors()
Remove removed constructors and move constructors first before writing out documentation. Task-number: PYSIDE-363 Change-Id: I8dbe3e96ccc8f293253eb52e00c384d3ff458dcc Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'sources/shiboken2/generator')
-rw-r--r--sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp
index 08c342cfa..e5c8c419e 100644
--- a/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp
+++ b/sources/shiboken2/generator/qtdoc/qtdocgenerator.cpp
@@ -1376,15 +1376,16 @@ void QtDocGenerator::writeConstructors(QTextStream& s, const AbstractMetaClass*
static const QString sectionTitle = QLatin1String(".. class:: ");
static const QString sectionTitleSpace = QString(sectionTitle.size(), QLatin1Char(' '));
- const AbstractMetaFunctionList lst = cppClass->queryFunctions(AbstractMetaClass::Constructors | AbstractMetaClass::Visible);
+ AbstractMetaFunctionList lst = cppClass->queryFunctions(AbstractMetaClass::Constructors | AbstractMetaClass::Visible);
+ for (int i = lst.size() - 1; i >= 0; --i) {
+ if (lst.at(i)->isModifiedRemoved() || lst.at(i)->functionType() == AbstractMetaFunction::MoveConstructorFunction)
+ lst.removeAt(i);
+ }
bool first = true;
QHash<QString, AbstractMetaArgument*> arg_map;
- for (AbstractMetaFunction *func : lst) {
- if (func->isModifiedRemoved())
- continue;
-
+ for (AbstractMetaFunction *func : qAsConst(lst)) {
if (first) {
first = false;
s << sectionTitle;
@@ -1409,7 +1410,7 @@ void QtDocGenerator::writeConstructors(QTextStream& s, const AbstractMetaClass*
s << endl;
- for (AbstractMetaFunction *func : lst)
+ for (AbstractMetaFunction *func : qAsConst(lst))
writeFormattedText(s, func->documentation(), cppClass);
}