summaryrefslogtreecommitdiffstats
path: root/src/corelib/json/qjsondocument.h
diff options
context:
space:
mode:
authorAndrew Christian <andrew.christian@nokia.com>2012-02-17 15:38:23 -0500
committerQt by Nokia <qt-info@nokia.com>2012-02-18 18:08:06 +0100
commit908a080006faff333b061b69b0dc0fd9cab36114 (patch)
tree3b9a1ee39a3d44643180a74febb7dd441d56326f /src/corelib/json/qjsondocument.h
parentf63b23afdac47bbf71a7b72fdd965c55b2f60602 (diff)
Added error reporting to QJsonParser
Change-Id: Ib2390c0faf1ed7ada3fc185abce83740ad112929 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'src/corelib/json/qjsondocument.h')
-rw-r--r--src/corelib/json/qjsondocument.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/corelib/json/qjsondocument.h b/src/corelib/json/qjsondocument.h
index 39db830726..7eca0302db 100644
--- a/src/corelib/json/qjsondocument.h
+++ b/src/corelib/json/qjsondocument.h
@@ -54,6 +54,26 @@ namespace QJsonPrivate {
class Parser;
}
+struct Q_CORE_EXPORT QJsonParseError
+{
+ enum ParseError {
+ NoError = 0,
+ UnterminatedObject,
+ MissingNameSeparator,
+ UnterminatedArray,
+ MissingValueSeparator,
+ IllegalValue,
+ EndOfNumber,
+ IllegalNumber,
+ StringEscapeSequence,
+ StringUTF8Scan,
+ EndOfString
+ };
+
+ int offset;
+ ParseError error;
+};
+
class Q_CORE_EXPORT QJsonDocument
{
public:
@@ -85,7 +105,7 @@ public:
static QJsonDocument fromVariant(const QVariant &variant);
QVariant toVariant() const;
- static QJsonDocument fromJson(const QByteArray &json);
+ static QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error = 0);
QByteArray toJson() const;
bool isEmpty() const;