Lines Matching refs:json_value

915 bool AsValue(cJSON* json_value, T* t);
917 inline bool AsValue(cJSON* json_value, int32_t* value) {
918 double d = json_value->valuedouble;
919 if (json_value->type != cJSON_Number || !IsIntegral(d) ||
927 inline bool AsValue(cJSON* json_value, uint64_t* value) {
928 if (json_value->type != cJSON_String)
930 int result = std::sscanf(json_value->valuestring, "0x%016" PRIx64, value);
934 inline bool AsValue(cJSON* json_value, uint32_t* value) {
935 double d = json_value->valuedouble;
936 if (json_value->type != cJSON_Number || !IsIntegral(d) ||
943 inline bool AsValue(cJSON* json_value, uint8_t* value) {
945 AsValue(json_value, &value32);
952 inline bool AsValue(cJSON* json_value, float* value) {
953 if (json_value->type != cJSON_Number)
955 *value = static_cast<float>(json_value->valuedouble);
960 inline bool AsArray(cJSON* json_value, uint32_t count, T* values) {
961 if (json_value->type != cJSON_Array ||
962 cJSON_GetArraySize(json_value) != count)
965 if (!AsValue(cJSON_GetArrayItem(json_value, i), values + i))
972 inline bool AsValue(cJSON* json_value, T (*value)[N]) {
973 return AsArray(json_value, N, *value);
977 inline bool AsValue(cJSON* json_value, char (*value)[N]) {
978 if (json_value->type != cJSON_String)
980 size_t len = strlen(json_value->valuestring);
983 memcpy(*value, json_value->valuestring, len);
989 inline bool AsValue(cJSON* json_value, T* t) {
991 if (!AsValue(json_value, &value))
999 inline bool AsValue(cJSON* json_value, std::vector<T>* value) {
1000 if (json_value->type != cJSON_Array)
1002 int size = cJSON_GetArraySize(json_value);
1004 return AsArray(json_value, size, value->data());
1008 inline bool AsValue(cJSON* json_value, std::pair<F, S>* value) {
1009 if (json_value->type != cJSON_Array || cJSON_GetArraySize(json_value) != 2)
1011 return AsValue(cJSON_GetArrayItem(json_value, 0), &value->first) &&
1012 AsValue(cJSON_GetArrayItem(json_value, 1), &value->second);
1016 inline bool AsValue(cJSON* json_value, std::map<F, S>* value) {
1017 if (json_value->type != cJSON_Array)
1019 int size = cJSON_GetArraySize(json_value);
1022 if (!AsValue(cJSON_GetArrayItem(json_value, i), &elem))
1033 cJSON* json_value = cJSON_GetObjectItem(object, key);
1034 if (!json_value) {
1039 if (AsValue(json_value, value))
1064 cJSON* json_value = cJSON_GetObjectItem(object_, key);
1065 if (!json_value) {
1070 if (AsArray(json_value, count, *value))
1084 bool AsValue(cJSON* json_value, T* t) {
1085 if (json_value->type != cJSON_Object)
1087 JsonReaderVisitor visitor(json_value, nullptr);