diff options
Diffstat (limited to 'src/libs/languageserverprotocol/jsonobject.cpp')
| -rw-r--r-- | src/libs/languageserverprotocol/jsonobject.cpp | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/src/libs/languageserverprotocol/jsonobject.cpp b/src/libs/languageserverprotocol/jsonobject.cpp index 7bdf3f86888..75edb76de3b 100644 --- a/src/libs/languageserverprotocol/jsonobject.cpp +++ b/src/libs/languageserverprotocol/jsonobject.cpp @@ -29,34 +29,6 @@ namespace LanguageServerProtocol { -template <> -bool JsonObject::checkVal<QString>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::String, errorHierarchy); } - -template <> -bool JsonObject::checkVal<int>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::Double, errorHierarchy); } - -template <> -bool JsonObject::checkVal<double>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::Double, errorHierarchy); } - -template <> -bool JsonObject::checkVal<bool>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::Bool, errorHierarchy); } - -template <> -bool JsonObject::checkVal<std::nullptr_t>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::Null, errorHierarchy); } - -template<> -bool JsonObject::checkVal<QJsonArray>(ErrorHierarchy *errorHierarchy, const QJsonValue &val) -{ return checkType(val.type(), QJsonValue::Array, errorHierarchy); } - -template<> -bool JsonObject::checkVal<QJsonValue>(ErrorHierarchy * /*errorHierarchy*/, const QJsonValue &/*val*/) -{ return true; } - JsonObject &JsonObject::operator=(const JsonObject &other) = default; JsonObject &JsonObject::operator=(JsonObject &&other) @@ -75,43 +47,4 @@ QJsonObject::iterator JsonObject::insert(const QString &key, const QJsonValue &v return m_jsonObject.insert(key, value); } -bool JsonObject::checkKey(ErrorHierarchy *errorHierarchy, const QString &key, - const std::function<bool (const QJsonValue &)> &predicate) const -{ - const bool valid = predicate(m_jsonObject.value(key)); - if (!valid && errorHierarchy) - errorHierarchy->prependMember(key); - return valid; -} - -QString JsonObject::valueTypeString(QJsonValue::Type type) -{ - switch (type) { - case QJsonValue::Null: return QString("Null"); - case QJsonValue::Bool: return QString("Bool"); - case QJsonValue::Double: return QString("Double"); - case QJsonValue::String: return QString("String"); - case QJsonValue::Array: return QString("Array"); - case QJsonValue::Object: return QString("Object"); - case QJsonValue::Undefined: return QString("Undefined"); - } - return QString(); -} - -QString JsonObject::errorString(QJsonValue::Type expected, QJsonValue::Type actual) -{ - return tr("Expected type %1 but value contained %2") - .arg(valueTypeString(expected), valueTypeString(actual)); -} - -bool JsonObject::checkType(QJsonValue::Type type, - QJsonValue::Type expectedType, - ErrorHierarchy *errorHierarchy) -{ - const bool ret = type == expectedType; - if (!ret && errorHierarchy) - errorHierarchy->setError(errorString(expectedType, type)); - return ret; -} - } // namespace LanguageServerProtocol |
