diff options
author | Lars Knoll <lars.knoll@nokia.com> | 2012-01-17 10:31:01 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@nokia.com> | 2012-01-17 13:38:28 +0100 |
commit | 76c68feb2a12586999515d775c8b62e3b497a8fa (patch) | |
tree | a04dc5fc17bf4259f37166d6ae00f18e90b307f9 | |
parent | 2994135f6048052e81fa23191828d2cdda6c8ef6 (diff) |
Further cleanups of the qjsonvalue.h header
Change-Id: If748dabaa54c453e9c74117ab670d3280c18bf96
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
-rw-r--r-- | src/qjsonvalue.cpp | 24 | ||||
-rw-r--r-- | src/qjsonvalue.h | 4 |
2 files changed, 13 insertions, 15 deletions
diff --git a/src/qjsonvalue.cpp b/src/qjsonvalue.cpp index 9933e77..b7102c1 100644 --- a/src/qjsonvalue.cpp +++ b/src/qjsonvalue.cpp @@ -184,7 +184,7 @@ QJsonValue::QJsonValue(const QJsonArray &a) : t(Array), d(a.d) { a.compact(); - array = a.a; + base = a.a; if (d) d->ref.ref(); } @@ -196,7 +196,7 @@ QJsonValue::QJsonValue(const QJsonObject &o) : t(Object), d(o.d) { o.compact(); - object = o.o; + base = o.o; if (d) d->ref.ref(); } @@ -221,7 +221,7 @@ QJsonValue::QJsonValue(const QJsonValue &other) { t = other.t; d = other.d; - memcpy(raw, other.raw, sizeof(double)); + ui = other.ui; if (d) d->ref.ref(); @@ -332,9 +332,9 @@ QVariant QJsonValue::toVariant() const case String: return toString(); case Array: - return QJsonArray(d, array).toVariantList(); + return QJsonArray(d, static_cast<Private::Array *>(base)).toVariantList(); case Object: - return QJsonObject(d, object).toVariantMap(); + return QJsonObject(d, static_cast<Private::Object *>(base)).toVariantMap(); case Null: case Undefined: break; @@ -415,7 +415,7 @@ QJsonArray QJsonValue::toArray() const if (!d || t != Array) return QJsonArray(); - return QJsonArray(d, array); + return QJsonArray(d, static_cast<Private::Array *>(base)); } /*! @@ -428,7 +428,7 @@ QJsonObject QJsonValue::toObject() const if (!d || t != Object) return QJsonObject(); - return QJsonObject(d, object); + return QJsonObject(d, static_cast<Private::Object *>(base)); } /*! @@ -450,9 +450,11 @@ bool QJsonValue::operator==(const QJsonValue &other) const case String: return toString() == other.toString(); case Array: - return QJsonArray(d, array) == QJsonArray(other.d, other.array); + return QJsonArray(d, static_cast<Private::Array *>(base)) + == QJsonArray(other.d, static_cast<Private::Array *>(other.base)); case Object: - return QJsonObject(d, object) == QJsonObject(other.d, other.object); + return QJsonObject(d, static_cast<Private::Object *>(base)) + == QJsonObject(other.d, static_cast<Private::Object *>(other.base)); } return true; } @@ -473,12 +475,12 @@ void QJsonValue::detach() if (!d) return; - Private::Data *x = d->detach(object); + Private::Data *x = d->detach(base); x->ref.ref(); if (!d->ref.deref()) delete d; d = x; - object = static_cast<Private::Object *>(d->header->root()); + base = static_cast<Private::Object *>(d->header->root()); } diff --git a/src/qjsonvalue.h b/src/qjsonvalue.h index 7aa1c47..a1a3cd9 100644 --- a/src/qjsonvalue.h +++ b/src/qjsonvalue.h @@ -101,7 +101,6 @@ public: private: // avoid implicit conversions from char * to bool inline QJsonValue(const void *) {} - friend class Data; friend class Private::Value; friend class QJsonArray; friend class QJsonObject; @@ -114,14 +113,11 @@ private: Type t; Private::Data *d; // needed for Objects and Arrays union { - char raw[sizeof(double)]; quint64 ui; bool b; double dbl; QStringData *stringData; Private::Base *base; - Private::Object *object; - Private::Array *array; }; }; |