41 QMJsonValue::skipSpaces(json, index);
42 QMJsonValue::verifyIndex(json, index);
44 switch(json.at(index).toLatin1())
48 return QMPointer<QMJsonValue>(
new QMJsonValue(
object));
60 if(key == NULL || key->isString() ==
false)
61 QMJsonValue::throwError(json, index,
"Key is not a string. Key's in a JSON object must be a valid JSON string");
63 QMJsonValue::skipSpaces(json, index);
64 QMJsonValue::verifyIndex(json, index);
66 switch(json.at(index).toLatin1())
73 QMJsonValue::throwError(json, index,
"Expected \":\"");
76 QMJsonValue::skipSpaces(json, index);
77 QMJsonValue::verifyIndex(json, index);
89 auto json = QString();
90 const auto &
object = this->
get();
98 if(
object.isNull() ==
true)
101 if(object->count() == 0)
112 auto iter =
object->cbegin();
114 while(iter != object->cend())
116 if(iter.value().isNull() ==
true)
133 QStringList keys =
object->keys();
136 for(
const auto &key : keys)
138 const auto &value =
object->value(key);
149 return json.replace(json.length() - 1, 1,
'}');
156 auto space = QString(tab,
' ');
161 auto iter =
object->cbegin();
163 while(iter != object->cend())
165 if(iter.value().isNull() ==
true)
184 QStringList keys =
object->keys();
187 for(
const auto &key : keys)
189 const auto &value =
object->value(key);
203 json.remove(json.length() - 1, 1);
205 json += QString(tab,
' ');
virtual QString toJson(int32_t tab, QMJsonSort sort)
static QMPointer< QMJsonValue > fromJson(const QString &json)
static QMPointer< QMJsonValue > fromJson(const QString &json, int32_t &index)
virtual bool isBaseType(void)
Qt::CaseSensitivity convertQMJsonSort(QMJsonSort sort)