summaryrefslogtreecommitdiffstats
path: root/src/corelib/json/qjsonvalue.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/json/qjsonvalue.h')
-rw-r--r--src/corelib/json/qjsonvalue.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/corelib/json/qjsonvalue.h b/src/corelib/json/qjsonvalue.h
index fe028990c0..a00bc0b72f 100644
--- a/src/corelib/json/qjsonvalue.h
+++ b/src/corelib/json/qjsonvalue.h
@@ -149,6 +149,7 @@ public:
: a(array), is_object(false), index(idx) {}
QJsonValueRef(QJsonObject *object, int idx)
: o(object), is_object(true), index(idx) {}
+ inline QJsonValueRef(QJsonObject *object, const QString &key);
inline operator QJsonValue() const { return toValue(); }
QJsonValueRef &operator = (const QJsonValue &val);
@@ -170,6 +171,12 @@ public:
QJsonArray toArray() const;
QJsonObject toObject() const;
+ // ### Qt 6: Add default values
+ inline bool toBool(bool defaultValue) const { return toValue().toBool(defaultValue); }
+ inline int toInt(int defaultValue) const { return toValue().toInt(defaultValue); }
+ inline double toDouble(double defaultValue) const { return toValue().toDouble(defaultValue); }
+ inline QString toString(const QString &defaultValue) const { return toValue().toString(defaultValue); }
+
inline bool operator==(const QJsonValue &other) const { return toValue() == other; }
inline bool operator!=(const QJsonValue &other) const { return toValue() != other; }
@@ -182,6 +189,7 @@ private:
};
uint is_object : 1;
uint index : 31;
+ struct UnionHelper;
};
#if !defined(QT_NO_DEBUG_STREAM) && !defined(QT_JSON_READONLY)