aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Skoland <davidskoland@gmail.com>2020-10-28 13:25:38 +0100
committerDavid Skoland <david.skoland@qt.io>2020-10-28 14:44:47 +0100
commit27bd9cab73a1e7e3d66e6025ace8510f932c5df8 (patch)
tree4c92072c9a15d681d1c6cdca97f35db88ca7dae2
parent535adf8d9f6d26d4e9598a9276f23f938fcc7753 (diff)
Standardize QJsonArray iteration
When using refs as loop variables, the clang compiler complains (with default settings). This prevents that. Note that QJsonValueRef is used "behind the scenes", which makes this iteration method correct. Change-Id: I5a5f58ca8ad3887bce2009231cbae5a57c107697 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp2
-rw-r--r--src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp6
-rw-r--r--src/qml/debugger/qqmldebugconnector.cpp2
-rw-r--r--src/qml/qml/qqmlimport.cpp4
-rw-r--r--src/qmltyperegistrar/qmltyperegistrar.cpp23
-rw-r--r--src/qmltyperegistrar/qmltypesclassdescription.cpp10
-rw-r--r--src/qmltyperegistrar/qmltypescreator.cpp16
-rw-r--r--tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp2
-rw-r--r--tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp2
-rw-r--r--tools/qmlplugindump/main.cpp2
10 files changed, 35 insertions, 34 deletions
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp b/src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp
index a70941682b..c4faeea7c9 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4debugjob.cpp
@@ -219,7 +219,7 @@ void ValueLookupJob::run()
scopeObject.data());
}
QV4::ScopedStackFrame frame(scope, qmlContext);
- for (const QJsonValue &handle : handles) {
+ for (const QJsonValue handle : handles) {
QV4DataCollector::Ref ref = handle.toInt();
if (!collector->isValidRef(ref)) {
exception = QString::fromLatin1("Invalid Ref: %1").arg(ref);
diff --git a/src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp b/src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp
index a8403e15e2..8791a6119f 100644
--- a/src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp
+++ b/src/plugins/qmltooling/qmldbg_nativedebugger/qqmlnativedebugservice.cpp
@@ -479,7 +479,7 @@ void NativeDebugger::handleVariables(QJsonObject *response, const QJsonObject &a
Collector collector(engine);
const QJsonArray expanded = arguments.value(QLatin1String("expanded")).toArray();
- for (const QJsonValue &ex : expanded)
+ for (const QJsonValue ex : expanded)
collector.m_expanded.append(ex.toString());
TRACE_PROTOCOL("Expanded: " << collector.m_expanded);
@@ -522,7 +522,7 @@ void NativeDebugger::handleExpressions(QJsonObject *response, const QJsonObject
Collector collector(engine);
const QJsonArray expanded = arguments.value(QLatin1String("expanded")).toArray();
- for (const QJsonValue &ex : expanded)
+ for (const QJsonValue ex : expanded)
collector.m_expanded.append(ex.toString());
TRACE_PROTOCOL("Expanded: " << collector.m_expanded);
@@ -530,7 +530,7 @@ void NativeDebugger::handleExpressions(QJsonObject *response, const QJsonObject
QV4::Scope scope(engine);
const QJsonArray expressions = arguments.value(QLatin1String("expressions")).toArray();
- for (const QJsonValue &expr : expressions) {
+ for (const QJsonValue expr : expressions) {
QString expression = expr.toObject().value(QLatin1String("expression")).toString();
QString name = expr.toObject().value(QLatin1String("name")).toString();
TRACE_PROTOCOL("Evaluate expression: " << expression);
diff --git a/src/qml/debugger/qqmldebugconnector.cpp b/src/qml/debugger/qqmldebugconnector.cpp
index 0ef40d6911..74b10e64d7 100644
--- a/src/qml/debugger/qqmldebugconnector.cpp
+++ b/src/qml/debugger/qqmldebugconnector.cpp
@@ -148,7 +148,7 @@ QQmlDebugConnector *QQmlDebugConnector::instance()
for (const QJsonObject &object : metaData) {
const auto keys = object.value(QLatin1String("MetaData")).toObject()
.value(QLatin1String("Keys")).toArray();
- for (const QJsonValue &key : keys) {
+ for (const QJsonValue key : keys) {
QString keyString = key.toString();
if (params->services.isEmpty() || params->services.contains(keyString))
loadQQmlDebugService(keyString);
diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
index 000498b6d5..f6af507147 100644
--- a/src/qml/qml/qqmlimport.cpp
+++ b/src/qml/qml/qqmlimport.cpp
@@ -1170,7 +1170,7 @@ bool QQmlImportsPrivate::populatePluginPairVector(QVector<StaticPluginPair> &res
return false;
}
// A plugin can be set up to handle multiple URIs, so go through the list:
- for (const QJsonValue &metaTagUri : metaTagsUriList) {
+ for (const QJsonValue metaTagUri : metaTagsUriList) {
if (versionUris.contains(metaTagUri.toString())) {
result.append(qMakePair(plugin, metaTagsUriList));
break;
@@ -1256,7 +1256,7 @@ QTypeRevision QQmlImportsPrivate::importExtension(
const QString basePath = QFileInfo(qmldirPath).absoluteFilePath();
for (const QString &versionUri : versionUris) {
for (const StaticPluginPair &pair : qAsConst(pluginPairs)) {
- for (const QJsonValue &metaTagUri : pair.second) {
+ for (const QJsonValue metaTagUri : pair.second) {
if (versionUri == metaTagUri.toString()) {
staticPluginsFound++;
QObject *instance = pair.first.instance();
diff --git a/src/qmltyperegistrar/qmltyperegistrar.cpp b/src/qmltyperegistrar/qmltyperegistrar.cpp
index c2918e515e..2f37d3a963 100644
--- a/src/qmltyperegistrar/qmltyperegistrar.cpp
+++ b/src/qmltyperegistrar/qmltyperegistrar.cpp
@@ -57,7 +57,7 @@ enum RegistrationMode {
static RegistrationMode qmlTypeRegistrationMode(const QJsonObject &classDef)
{
const QJsonArray classInfos = classDef[QLatin1String("classInfos")].toArray();
- for (const QJsonValue &info: classInfos) {
+ for (const QJsonValue info : classInfos) {
const QString name = info[QLatin1String("name")].toString();
if (name == QLatin1String("QML.Element")) {
if (classDef[QLatin1String("object")].toBool())
@@ -127,7 +127,7 @@ static QVector<QJsonObject> foreignRelatedTypes(const QVector<QJsonObject> &type
for (const QJsonObject &type : types) {
processedRelatedNames.insert(type.value(qualifiedClassNameKey).toString());
const auto classInfos = type.value(classInfosKey).toArray();
- for (const QJsonValue &classInfo : classInfos) {
+ for (const QJsonValue classInfo : classInfos) {
const QJsonObject obj = classInfo.toObject();
if (obj.value(nameKey).toString() == qmlForeignName) {
processedRelatedNames.insert(obj.value(valueKey).toString());
@@ -141,7 +141,7 @@ static QVector<QJsonObject> foreignRelatedTypes(const QVector<QJsonObject> &type
for (const QJsonObject &foreignType : foreignTypes) {
const auto classInfos = foreignType.value(classInfosKey).toArray();
bool seenQmlPrefix = false;
- for (const QJsonValue &classInfo : classInfos) {
+ for (const QJsonValue classInfo : classInfos) {
const QJsonObject obj = classInfo.toObject();
const QString name = obj.value(nameKey).toString();
if (!seenQmlPrefix && name.startsWith(qmlNamePrefix)) {
@@ -171,7 +171,7 @@ static QVector<QJsonObject> foreignRelatedTypes(const QVector<QJsonObject> &type
const QJsonObject classDef = typeQueue.dequeue();
const auto classInfos = classDef.value(classInfosKey).toArray();
- for (const QJsonValue &classInfo : classInfos) {
+ for (const QJsonValue classInfo : classInfos) {
const QJsonObject obj = classInfo.toObject();
if (obj.value(nameKey).toString() == qmlAttachedName) {
addType(obj.value(valueKey).toString());
@@ -187,7 +187,7 @@ static QVector<QJsonObject> foreignRelatedTypes(const QVector<QJsonObject> &type
}
const auto otherClassInfos = other->value(classInfosKey).toArray();
- for (const QJsonValue &otherClassInfo : otherClassInfos) {
+ for (const QJsonValue otherClassInfo : otherClassInfos) {
const QJsonObject obj = otherClassInfo.toObject();
if (obj.value(nameKey).toString() == qmlAttachedName) {
addType(obj.value(valueKey).toString());
@@ -335,7 +335,7 @@ int main(int argc, char **argv)
auto processMetaObject = [&](const QJsonObject &metaObject) {
const QString include = resolvedInclude(metaObject[QLatin1String("inputFile")].toString());
const QJsonArray classes = metaObject[QLatin1String("classes")].toArray();
- for (const auto &cls : classes) {
+ for (const QJsonValue cls : classes) {
QJsonObject classDef = cls.toObject();
classDef.insert(QLatin1String("inputFile"), include);
@@ -357,7 +357,8 @@ int main(int argc, char **argv)
includes.append(include);
{
bool shouldRegister = true;
- for (const QJsonValue &v : classDef.value(QLatin1String("classInfos")).toArray()) {
+ for (const QJsonValue v :
+ classDef.value(QLatin1String("classInfos")).toArray()) {
if (v[QLatin1String("name")].toString() == QLatin1String("QML.ManualRegistration"))
shouldRegister = QStringView(u"true").compare(v[QLatin1String("value")].toString(), Qt::CaseInsensitive) != 0;
}
@@ -376,7 +377,7 @@ int main(int argc, char **argv)
if (metaObjects.isArray()) {
const QJsonArray metaObjectsArray = metaObjects.array();
- for (const auto &metaObject : metaObjectsArray) {
+ for (const QJsonValue metaObject : metaObjectsArray) {
if (!metaObject.isObject()) {
fprintf(stderr, "Error parsing %s: JSON is not an object\n",
qPrintable(source));
@@ -435,7 +436,7 @@ int main(int argc, char **argv)
if (classDef.value(QLatin1String("namespace")).toBool()) {
QString targetName = className;
- for (const QJsonValue &v : classDef.value(QLatin1String("classInfos")).toArray()) {
+ for (const QJsonValue v : classDef.value(QLatin1String("classInfos")).toArray()) {
if (v[QLatin1String("name")].toString() == QLatin1String("QML.Foreign"))
targetName = v[QLatin1String("value")].toString();
}
@@ -474,7 +475,7 @@ int main(int argc, char **argv)
}
const QJsonArray foreignObjectsArray = foreignMetaObjects.array();
- for (const auto &metaObject : foreignObjectsArray) {
+ for (const QJsonValue metaObject : foreignObjectsArray) {
if (!metaObject.isObject()) {
fprintf(stderr, "Error parsing %s: JSON is not an object\n",
qPrintable(types));
@@ -484,7 +485,7 @@ int main(int argc, char **argv)
auto const asObject = metaObject.toObject();
const QString include = asObject[QLatin1String("inputFile")].toString();
const QJsonArray classes = asObject[QLatin1String("classes")].toArray();
- for (const auto &cls : classes) {
+ for (const QJsonValue cls : classes) {
QJsonObject classDef = cls.toObject();
classDef.insert(QLatin1String("inputFile"), include);
foreignTypes.append(classDef);
diff --git a/src/qmltyperegistrar/qmltypesclassdescription.cpp b/src/qmltyperegistrar/qmltypesclassdescription.cpp
index 9f58d824fe..20f5d4c46a 100644
--- a/src/qmltyperegistrar/qmltypesclassdescription.cpp
+++ b/src/qmltyperegistrar/qmltypesclassdescription.cpp
@@ -35,7 +35,7 @@ static void collectExtraVersions(const QJsonObject *component, const QString &ke
QList<QTypeRevision> &extraVersions)
{
const QJsonArray &items = component->value(key).toArray();
- for (const QJsonValue &item : items) {
+ for (const QJsonValue item : items) {
const QJsonObject obj = item.toObject();
const auto revision = obj.find(QLatin1String("revision"));
if (revision != obj.end()) {
@@ -67,7 +67,7 @@ void QmlTypesClassDescription::collect(const QJsonObject *classDef,
if (file.isEmpty() && classDef->value(QLatin1String("registerable")).toBool())
file = classDef->value(QLatin1String("inputFile")).toString();
const auto classInfos = classDef->value(QLatin1String("classInfos")).toArray();
- for (const QJsonValue &classInfo : classInfos) {
+ for (const QJsonValue classInfo : classInfos) {
const QJsonObject obj = classInfo.toObject();
const QString name = obj[QLatin1String("name")].toString();
const QString value = obj[QLatin1String("value")].toString();
@@ -108,7 +108,7 @@ void QmlTypesClassDescription::collect(const QJsonObject *classDef,
classDef = other;
// Foreign type can have a default property or an attached types
const auto classInfos = classDef->value(QLatin1String("classInfos")).toArray();
- for (const QJsonValue &classInfo : classInfos) {
+ for (const QJsonValue classInfo : classInfos) {
const QJsonObject obj = classInfo.toObject();
const QString foreignName = obj[QLatin1String("name")].toString();
const QString foreignValue = obj[QLatin1String("value")].toString();
@@ -136,11 +136,11 @@ void QmlTypesClassDescription::collect(const QJsonObject *classDef,
auto supers = classDef->value(QLatin1String("superClasses")).toArray();
if (classDef != origClassDef) {
const QJsonArray origSupers = origClassDef->value(QLatin1String("superClasses")).toArray();
- for (const QJsonValue &origSuper : origSupers)
+ for (const QJsonValue origSuper : origSupers)
supers.append(origSuper);
}
- for (const QJsonValue &superValue : qAsConst(supers)) {
+ for (const QJsonValue superValue : qAsConst(supers)) {
const QJsonObject superObject = superValue.toObject();
if (superObject[QLatin1String("access")].toString() == QLatin1String("public")) {
const QString superName = superObject[QLatin1String("name")].toString();
diff --git a/src/qmltyperegistrar/qmltypescreator.cpp b/src/qmltyperegistrar/qmltypescreator.cpp
index 3d8906732f..50980685e9 100644
--- a/src/qmltyperegistrar/qmltypescreator.cpp
+++ b/src/qmltyperegistrar/qmltypescreator.cpp
@@ -150,7 +150,7 @@ void QmlTypesCreator::writeType(const QJsonObject &property, const QString &key,
void QmlTypesCreator::writeProperties(const QJsonArray &properties, QSet<QString> &notifySignals)
{
- for (const QJsonValue &property : properties) {
+ for (const QJsonValue property : properties) {
const QJsonObject obj = property.toObject();
const QString name = obj[QLatin1String("name")].toString();
m_qml.writeStartObject(QLatin1String("Property"));
@@ -173,7 +173,7 @@ void QmlTypesCreator::writeProperties(const QJsonArray &properties, QSet<QString
void QmlTypesCreator::writeMethods(const QJsonArray &methods, const QString &type,
const QSet<QString> &notifySignals)
{
- for (const QJsonValue &method : methods) {
+ for (const QJsonValue method : methods) {
const QJsonObject obj = method.toObject();
const QString name = obj[QLatin1String("name")].toString();
if (name.isEmpty())
@@ -187,7 +187,7 @@ void QmlTypesCreator::writeMethods(const QJsonArray &methods, const QString &typ
if (revision != obj.end())
m_qml.writeScriptBinding(QLatin1String("revision"), QString::number(revision.value().toInt()));
writeType(obj, QLatin1String("returnType"), false, false);
- for (const QJsonValue &argument : arguments) {
+ for (const QJsonValue argument : arguments) {
const QJsonObject obj = argument.toObject();
m_qml.writeStartObject(QLatin1String("Parameter"));
const QString name = obj[QLatin1String("name")].toString();
@@ -202,12 +202,12 @@ void QmlTypesCreator::writeMethods(const QJsonArray &methods, const QString &typ
void QmlTypesCreator::writeEnums(const QJsonArray &enums)
{
- for (const auto &item : enums) {
+ for (const QJsonValue item : enums) {
const QJsonObject obj = item.toObject();
const QJsonArray values = obj.value(QLatin1String("values")).toArray();
QStringList valueList;
- for (const QJsonValue &value : values)
+ for (const QJsonValue value : values)
valueList.append(enquote(value.toString()));
m_qml.writeStartObject(QLatin1String("Enum"));
@@ -242,14 +242,14 @@ static QJsonArray members(const QJsonObject *classDef, const QJsonObject *origCl
QJsonArray classDefMembers;
const QJsonArray candidates = classDef->value(key).toArray();
- for (const auto &member : candidates) {
+ for (const QJsonValue member : candidates) {
if (isAllowedInMajorVersion(member, maxMajorVersion))
classDefMembers.append(member);
}
if (classDef != origClassDef) {
const QJsonArray origClassDefMembers = origClassDef->value(key).toArray();
- for (const auto &member : origClassDefMembers) {
+ for (const QJsonValue member : origClassDefMembers) {
if (isAllowedInMajorVersion(member, maxMajorVersion))
classDefMembers.append(member);
}
@@ -315,7 +315,7 @@ void QmlTypesCreator::writeComponents()
// Hide deleteLater() methods
QJsonArray componentMethods = members(classDef, &component, methodsKey, m_version);
const QJsonArray componentSlots = members(classDef, &component, slotsKey, m_version);
- for (const QJsonValue &componentSlot : componentSlots)
+ for (const QJsonValue componentSlot : componentSlots)
componentMethods.append(componentSlot);
for (auto it = componentMethods.begin(); it != componentMethods.end();) {
if (it->toObject().value(nameKey).toString() == deleteLaterName)
diff --git a/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp b/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp
index dd201d1cfd..2561f19b11 100644
--- a/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp
+++ b/tests/auto/qml/debugger/qqmldebugjs/tst_qqmldebugjs.cpp
@@ -969,7 +969,7 @@ void tst_QQmlDebugJS::encodeQmlScope()
if (scopes.count() < 2)
scopesFailed = true;
- for (const QJsonValue &scope : scopes) {
+ for (const QJsonValue scope : scopes) {
++numExpectedScopes;
m_client->scope(scope.toObject().value("index").toInt());
}
diff --git a/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp b/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
index 6e06623fa6..2a6899080d 100644
--- a/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
+++ b/tests/auto/qml/qmlimportscanner/tst_qmlimportscanner.cpp
@@ -145,7 +145,7 @@ void TestQmlimportscanner::runQmlimportscanner(const QString &mode, const QStrin
const QJsonArray generatedArray = generated.array();
QJsonArray expectedArray = expected.array();
- for (const QJsonValue &value : generatedArray) {
+ for (const QJsonValue value : generatedArray) {
QVERIFY(value.isObject());
QJsonObject object = value.toObject();
diff --git a/tools/qmlplugindump/main.cpp b/tools/qmlplugindump/main.cpp
index aa78a9c6bc..11856ec5ef 100644
--- a/tools/qmlplugindump/main.cpp
+++ b/tools/qmlplugindump/main.cpp
@@ -820,7 +820,7 @@ static bool readDependenciesData(QString dependenciesFile, const QByteArray &fil
const QStringList requiredKeys = QStringList() << QStringLiteral("name")
<< QStringLiteral("type");
const auto deps = doc.array();
- for (const QJsonValue &dep : deps) {
+ for (const QJsonValue dep : deps) {
if (dep.isObject()) {
QJsonObject obj = dep.toObject();
for (const QString &requiredKey : requiredKeys)