summaryrefslogtreecommitdiffstats
path: root/src/qjsondocument.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qjsondocument.cpp')
-rw-r--r--src/qjsondocument.cpp26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/qjsondocument.cpp b/src/qjsondocument.cpp
index 4702428..764e963 100644
--- a/src/qjsondocument.cpp
+++ b/src/qjsondocument.cpp
@@ -48,8 +48,7 @@
#include <qjsonparser_p.h>
#include <qstringlist.h>
-using namespace QtJson;
-
+namespace QtJson {
QJsonDocument::QJsonDocument()
: d(0)
@@ -301,3 +300,26 @@ bool QJsonDocument::isValid()
}
return d != 0;
}
+
+} // namespace QtJson
+
+QT_BEGIN_NAMESPACE
+
+QDebug operator<<(QDebug dbg, const QtJson::QJsonDocument &o)
+{
+ if (!o.d) {
+ dbg << "QJsonDocument()";
+ return dbg;
+ }
+ QByteArray json;
+ if (o.d->header->root()->isArray())
+ QtJson::QJsonWriter::arrayToJson(static_cast<QtJson::Private::Array *>(o.d->header->root()), json, 0, true);
+ else
+ QtJson::QJsonWriter::objectToJson(static_cast<QtJson::Private::Object *>(o.d->header->root()), json, 0, true);
+ dbg.nospace() << "QJsonDocument("
+ << json.constData() // print as utf-8 string without extra quotation marks
+ << ")";
+ return dbg.space();
+}
+
+QT_END_NAMESPACE