summaryrefslogtreecommitdiffstats
path: root/src/corelib/serialization/qjsonobject.h
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2021-11-09 16:49:15 -0800
committerThiago Macieira <thiago.macieira@intel.com>2022-02-15 17:00:03 -0800
commit800f60657d28ad96e0021b4dcd812e3a3be4dcb1 (patch)
treec73f15c4ebdb01f60e0901b2bea7d0002972625c /src/corelib/serialization/qjsonobject.h
parentf5762cd4b3130a650044863c5be132056f05daa5 (diff)
QJsonObject: use QJsonValueConstRef
Change-Id: I5e52dc5b093c43a3b678fffd16b608f32f8eb4b4 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Diffstat (limited to 'src/corelib/serialization/qjsonobject.h')
-rw-r--r--src/corelib/serialization/qjsonobject.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/corelib/serialization/qjsonobject.h b/src/corelib/serialization/qjsonobject.h
index 5c0cc1f5dc..e569d85192 100644
--- a/src/corelib/serialization/qjsonobject.h
+++ b/src/corelib/serialization/qjsonobject.h
@@ -121,7 +121,7 @@ public:
{
friend class const_iterator;
friend class QJsonObject;
- mutable QJsonValueRef item;
+ QJsonValueRef item;
public:
typedef std::random_access_iterator_tag iterator_category;
@@ -144,7 +144,8 @@ public:
inline QString key() const { return item.o->keyAt(item.index); }
inline QJsonValueRef value() const { return item; }
inline QJsonValueRef operator*() const { return item; }
- inline QJsonValueRef *operator->() const { return &item; }
+ inline const QJsonValueConstRef *operator->() const { return &item; }
+ inline QJsonValueRef *operator->() { return &item; }
const QJsonValueRef operator[](qsizetype j) { return { item.o, qsizetype(item.index) + j }; }
inline bool operator==(const iterator &other) const
@@ -184,14 +185,14 @@ public:
class const_iterator
{
friend class iterator;
- QJsonValueRef item;
+ QJsonValueConstRef item;
public:
typedef std::random_access_iterator_tag iterator_category;
typedef qsizetype difference_type;
typedef QJsonValue value_type;
- typedef const QJsonValueRef reference;
- typedef const QJsonValueRef *pointer;
+ typedef const QJsonValueConstRef reference;
+ typedef const QJsonValueConstRef *pointer;
inline const_iterator() : item(static_cast<QJsonObject*>(nullptr), 0) { }
inline const_iterator(const QJsonObject *obj, qsizetype index)
@@ -208,10 +209,10 @@ public:
}
inline QString key() const { return item.o->keyAt(item.index); }
- inline QJsonValueRef value() const { return item; }
- inline const QJsonValueRef operator*() const { return item; }
- inline const QJsonValueRef *operator->() const { return &item; }
- const QJsonValueRef operator[](qsizetype j) { return { item.o, qsizetype(item.index) + j }; }
+ inline QJsonValueConstRef value() const { return item; }
+ inline const QJsonValueConstRef operator*() const { return item; }
+ inline const QJsonValueConstRef *operator->() const { return &item; }
+ const QJsonValueConstRef operator[](qsizetype j) { return { item.o, qsizetype(item.index) + j }; }
inline bool operator==(const const_iterator &other) const
{ return item.o == other.item.o && item.index == other.item.index; }