#include #include std::string mbgl::toString(const mbgl::Value& value) { if (value.is()) return value.get(); else if (value.is()) return value.get() ? "true" : "false"; else if (value.is()) return util::toString(value.get()); else if (value.is()) return util::toString(value.get()); else if (value.is()) return util::toString(value.get()); else return "null"; } mbgl::Value mbgl::parseValue(const JSValue& value) { switch (value.GetType()) { case rapidjson::kNullType: case rapidjson::kFalseType: return false; case rapidjson::kTrueType: return true; case rapidjson::kStringType: return std::string { value.GetString(), value.GetStringLength() }; case rapidjson::kNumberType: if (value.IsUint64()) return value.GetUint64(); if (value.IsInt64()) return value.GetInt64(); return value.GetDouble(); default: return false; } }