19 string s = defaultString;
23 json_object *stringObject = NULL;
24 if (json_object_object_get_ex(o, key.c_str(), &stringObject))
26 if (json_object_get_type(stringObject) == json_type_string)
28 s = json_object_get_string(stringObject);
44 string s = defaultString;
48 json_object *outerObject = NULL;
49 if (json_object_object_get_ex(o, outerKey.c_str(), &outerObject))
51 json_object *innerObject = NULL;
52 if (json_object_object_get_ex(outerObject, innerKey.c_str(), &innerObject))
54 if (json_object_get_type(innerObject) == json_type_string)
56 s = json_object_get_string(innerObject);
77 json_object *intObject = NULL;
78 if (json_object_object_get_ex(o, key.c_str(), &intObject))
80 if (json_object_get_type(intObject) == json_type_int)
82 i = json_object_get_int(intObject);
102 json_object *boolObject = NULL;
103 if (json_object_object_get_ex(o, key.c_str(), &boolObject))
105 if (json_object_get_type(boolObject) == json_type_boolean)
107 b = json_object_get_boolean(boolObject);
123 vector<string> items;
124 json_object *arrayObject = NULL;
125 if (json_object_object_get_ex(o, key.c_str(), &arrayObject))
127 if (json_object_get_type(arrayObject) == json_type_array)
129 int itemCount = json_object_array_length(arrayObject);
130 for (
int i = 0; i < itemCount; ++i)
132 json_object *item = json_object_array_get_idx(arrayObject, i);
133 if (json_object_get_type(item) == json_type_string)
134 items.push_back( json_object_get_string(item) );
148 map<string, string> items;
149 json_object *keysVals =
nullptr;
150 if (json_object_object_get_ex(o, key.c_str(), &keysVals))
152 if (json_object_get_type(keysVals) == json_type_object)
154 json_object_object_foreach(keysVals, key, val)
156 if (json_object_get_type(val) == json_type_string)
157 items[key] = json_object_get_string(val);