From 64d568b550bb55e7886645727457edf3910ceded Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 9 Nov 2021 16:22:33 -0800 Subject: [PATCH] QCborArray: use QCborValueConstRef Change-Id: I5e52dc5b093c43a3b678fffd16b6077e5c4abd63 Reviewed-by: Sona Kurazyan --- src/corelib/plugin/qfactoryloader.cpp | 6 +++--- src/corelib/serialization/qcborarray.h | 13 +++++++------ src/testlib/qtest.h | 2 +- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/corelib/plugin/qfactoryloader.cpp b/src/corelib/plugin/qfactoryloader.cpp index 2c269aa183..8fa510aaea 100644 --- a/src/corelib/plugin/qfactoryloader.cpp +++ b/src/corelib/plugin/qfactoryloader.cpp @@ -233,7 +233,7 @@ inline void QFactoryLoaderPrivate::updateSinglePath(const QString &path) metaDataOk = true; const QCborArray k = object.value(QLatin1String("Keys")).toArray(); - for (QCborValueRef v : k) + for (QCborValueConstRef v : k) keys += cs ? v.toString() : v.toString().toLower(); } qCDebug(lcFactoryLoader) << "Got keys from plugin meta data" << keys; @@ -435,7 +435,7 @@ QMultiMap QFactoryLoader::keyMap() const for (int i = 0; i < metaDataList.size(); ++i) { const QCborMap metaData = metaDataList.at(i).value(QtPluginMetaDataKeys::MetaData).toMap(); const QCborArray keys = metaData.value(QLatin1String("Keys")).toArray(); - for (QCborValueRef key : keys) + for (QCborValueConstRef key : keys) result.insert(i, key.toString()); } return result; @@ -447,7 +447,7 @@ int QFactoryLoader::indexOf(const QString &needle) const for (int i = 0; i < metaDataList.size(); ++i) { const QCborMap metaData = metaDataList.at(i).value(QtPluginMetaDataKeys::MetaData).toMap(); const QCborArray keys = metaData.value(QLatin1String("Keys")).toArray(); - for (QCborValueRef key : keys) { + for (QCborValueConstRef key : keys) { if (key.toString().compare(needle, Qt::CaseInsensitive) == 0) return i; } diff --git a/src/corelib/serialization/qcborarray.h b/src/corelib/serialization/qcborarray.h index 9e49676335..4136517f5e 100644 --- a/src/corelib/serialization/qcborarray.h +++ b/src/corelib/serialization/qcborarray.h @@ -57,7 +57,7 @@ class Q_CORE_EXPORT QCborArray public: class ConstIterator; class Iterator { - mutable QCborValueRef item; + QCborValueRef item {}; friend class ConstIterator; friend class QCborArray; Iterator(QCborContainerPrivate *dd, qsizetype ii) : item(dd, ii) {} @@ -79,7 +79,8 @@ public: } QCborValueRef operator*() const { return item; } - QCborValueRef *operator->() const { return &item; } + QCborValueRef *operator->() { return &item; } + const QCborValueConstRef *operator->() const { return &item; } QCborValueRef operator[](qsizetype j) const { return { item.d, item.i + j }; } bool operator==(const Iterator &o) const { return item.d == o.item.d && item.i == o.item.i; } @@ -106,7 +107,7 @@ public: }; class ConstIterator { - QCborValueRef item; + QCborValueConstRef item; friend class Iterator; friend class QCborArray; ConstIterator(QCborContainerPrivate *dd, qsizetype ii) : item(dd, ii) {} @@ -127,9 +128,9 @@ public: return *this; } - const QCborValueRef operator*() const { return item; } - const QCborValueRef *operator->() const { return &item; } - QCborValueRef operator[](qsizetype j) const { return QCborValueRef{ item.d, item.i + j }; } + QCborValueConstRef operator*() const { return item; } + const QCborValueConstRef *operator->() const { return &item; } + QCborValueConstRef operator[](qsizetype j) const { return QCborValueRef{ item.d, item.i + j }; } bool operator==(const Iterator &o) const { return item.d == o.item.d && item.i == o.item.i; } bool operator!=(const Iterator &o) const { return !(*this == o); } diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h index 20c80058ac..7fd205ba2d 100644 --- a/src/testlib/qtest.h +++ b/src/testlib/qtest.h @@ -326,7 +326,7 @@ struct QCborValueFormatter { QByteArray out(1, '['); const char *comma = ""; - for (const QCborValueRef v : a) { + for (QCborValueConstRef v : a) { QScopedArrayPointer s(format(v)); out += comma; out += s.get();