diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2016-11-29 12:32:50 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2016-11-29 12:32:50 +0100 |
commit | bc476e8803b1be71014a4cd6a93abfcbb04465e5 (patch) | |
tree | 3fa5a2fa65bec6b68ca2fa4f576cafecbcef2491 /tools/qscxmlc/scxmlcppdumper.cpp | |
parent | 20f1f1b1a027dfe5dcdd91d25590095e99eb2bf3 (diff) | |
parent | 8a3dae92910e9df5817d9cde16aef81e76bfc60f (diff) |
Merge 5.8 into 5.8.0
Change-Id: I8fa59d8b2559aa620eb533ed4274ea1b7374d2c7
Diffstat (limited to 'tools/qscxmlc/scxmlcppdumper.cpp')
-rw-r--r-- | tools/qscxmlc/scxmlcppdumper.cpp | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/tools/qscxmlc/scxmlcppdumper.cpp b/tools/qscxmlc/scxmlcppdumper.cpp index aa207bb..f5e9b2e 100644 --- a/tools/qscxmlc/scxmlcppdumper.cpp +++ b/tools/qscxmlc/scxmlcppdumper.cpp @@ -143,28 +143,17 @@ static const char *headerStart = using namespace DocumentModel; -QString createContainer(const QString &baseType, const QString &elementType, - const QStringList &elements, bool useCxx11) +QString createContainer(const QStringList &elements) { QString result; - if (useCxx11) { - if (elements.isEmpty()) { - result += QStringLiteral("{}"); - } else { - result += QStringLiteral("{ ") + elements.join(QStringLiteral(", ")) + QStringLiteral(" }"); - } + if (elements.isEmpty()) { + result += QStringLiteral("{}"); } else { - result += QStringLiteral("%1< %2 >()").arg(baseType, elementType); - if (!elements.isEmpty()) { - result += QStringLiteral(" << ") + elements.join(QStringLiteral(" << ")); - } + result += QStringLiteral("{ ") + elements.join(QStringLiteral(", ")) + QStringLiteral(" }"); } return result; } -QString createVector(const QString &elementType, const QStringList &elements, bool useCxx11) -{ return createContainer(QStringLiteral("QVector"), elementType, elements, useCxx11); } - static void generateList(QString &out, std::function<QString(int)> next) { const int maxLineLength = 80; @@ -380,8 +369,7 @@ int createFactoryId(QStringList &factories, const QString &className, const QString &namespacePrefix, const QScxmlExecutableContent::InvokeInfo &invokeInfo, const QVector<QScxmlExecutableContent::StringId> &namelist, - const QVector<QScxmlExecutableContent::ParameterInfo> ¶meters, - bool useCxx11) + const QVector<QScxmlExecutableContent::ParameterInfo> ¶meters) { const int idx = factories.size(); @@ -405,8 +393,7 @@ int createFactoryId(QStringList &factories, const QString &className, for (auto name : namelist) { l.append(QString::number(name)); } - line += QStringLiteral("%1, ").arg( - createVector(QStringLiteral("QScxmlExecutableContent::StringId"), l, useCxx11)); + line += QStringLiteral("%1, ").arg(createContainer(l)); } { QStringList l; @@ -416,9 +403,7 @@ int createFactoryId(QStringList &factories, const QString &className, QString::number(parameter.expr), QString::number(parameter.location)); } - line += QStringLiteral("%1);").arg( - createVector(QStringLiteral("QScxmlExecutableContent::ParameterInfo"), l, - useCxx11)); + line += QStringLiteral("%1);").arg(createContainer(l)); } factories.append(line); @@ -464,7 +449,7 @@ void CppDumper::dump(TranslationUnit *unit) className = mangleIdentifier(classnameForDocument.value(content.data())); } return createFactoryId(factories[i], className, namespacePrefix, - invokeInfo, names, parameters, m_translationUnit->useCxx11); + invokeInfo, names, parameters); }); classNames.append(mangleIdentifier(classnameForDocument.value(doc))); } |