Lines Matching refs:item
93 static const char *parse_number(cJSON *item, const char *num) { in parse_number() argument
127 item->valuedouble = n; in parse_number()
128 item->valueint = (int)n; in parse_number()
129 item->type = cJSON_Number; in parse_number()
182 static char *print_number(cJSON *item, printbuffer *p) { in print_number() argument
184 double d = item->valuedouble; in print_number()
192 } else if (fabs(((double)item->valueint) - d) <= DBL_EPSILON && in print_number()
200 sprintf(str, "%d", item->valueint); in print_number()
264 static const char *parse_string(cJSON *item, const char *str) { in parse_string() argument
360 item->valuestring = out; in parse_string()
361 item->type = cJSON_String; in parse_string()
461 static char *print_string(cJSON *item, printbuffer *p) { in print_string() argument
462 return print_string_ptr(item->valuestring, p); in print_string()
466 static const char *parse_value(cJSON *item, const char *value);
467 static char *print_value(cJSON *item, int depth, int fmt, printbuffer *p);
468 static const char *parse_array(cJSON *item, const char *value);
469 static char *print_array(cJSON *item, int depth, int fmt, printbuffer *p);
470 static const char *parse_object(cJSON *item, const char *value);
471 static char *print_object(cJSON *item, int depth, int fmt, printbuffer *p);
515 char *cJSON_Print(cJSON *item) { return print_value(item, 0, 1, 0); } in cJSON_Print() argument
516 char *cJSON_PrintUnformatted(cJSON *item) { return print_value(item, 0, 0, 0); } in cJSON_PrintUnformatted() argument
518 char *cJSON_PrintBuffered(cJSON *item, int prebuffer, int fmt) { in cJSON_PrintBuffered() argument
523 return print_value(item, 0, fmt, &p); in cJSON_PrintBuffered()
527 static const char *parse_value(cJSON *item, const char *value) { in parse_value() argument
531 item->type = cJSON_NULL; in parse_value()
535 item->type = cJSON_False; in parse_value()
539 item->type = cJSON_True; in parse_value()
540 item->valueint = 1; in parse_value()
544 return parse_string(item, value); in parse_value()
547 return parse_number(item, value); in parse_value()
550 return parse_array(item, value); in parse_value()
553 return parse_object(item, value); in parse_value()
561 static char *print_value(cJSON *item, int depth, int fmt, printbuffer *p) { in print_value() argument
563 if (!item) in print_value()
566 switch ((item->type) & 255) { in print_value()
586 out = print_number(item, p); in print_value()
589 out = print_string(item, p); in print_value()
592 out = print_array(item, depth, fmt, p); in print_value()
595 out = print_object(item, depth, fmt, p); in print_value()
599 switch ((item->type) & 255) { in print_value()
610 out = print_number(item, 0); in print_value()
613 out = print_string(item, 0); in print_value()
616 out = print_array(item, depth, fmt, 0); in print_value()
619 out = print_object(item, depth, fmt, 0); in print_value()
627 static const char *parse_array(cJSON *item, const char *value) { in parse_array() argument
634 item->type = cJSON_Array; in parse_array()
639 item->child = child = cJSON_New_Item(); in parse_array()
640 if (!item->child) in parse_array()
666 static char *print_array(cJSON *item, int depth, int fmt, printbuffer *p) { in print_array() argument
670 cJSON *child = item->child; in print_array()
696 child = item->child; in print_array()
726 child = item->child; in print_array()
777 static const char *parse_object(cJSON *item, const char *value) { in parse_object() argument
784 item->type = cJSON_Object; in parse_object()
789 item->child = child = cJSON_New_Item(); in parse_object()
790 if (!item->child) in parse_object()
835 static char *print_object(cJSON *item, int depth, int fmt, printbuffer *p) { in print_object() argument
839 cJSON *child = item->child; in print_object()
876 child = item->child; in print_object()
937 child = item->child; in print_object()
1016 cJSON *cJSON_GetArrayItem(cJSON *array, int item) { in cJSON_GetArrayItem() argument
1018 while (c && item > 0) in cJSON_GetArrayItem()
1019 item--, c = c->next; in cJSON_GetArrayItem()
1030 static void suffix_object(cJSON *prev, cJSON *item) { in suffix_object() argument
1031 prev->next = item; in suffix_object()
1032 item->prev = prev; in suffix_object()
1035 static cJSON *create_reference(cJSON *item) { in create_reference() argument
1039 memcpy(ref, item, sizeof(cJSON)); in create_reference()
1047 void cJSON_AddItemToArray(cJSON *array, cJSON *item) { in cJSON_AddItemToArray() argument
1049 if (!item) in cJSON_AddItemToArray()
1052 array->child = item; in cJSON_AddItemToArray()
1056 suffix_object(c, item); in cJSON_AddItemToArray()
1059 void cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item) { in cJSON_AddItemToObject() argument
1060 if (!item) in cJSON_AddItemToObject()
1062 if (item->string) in cJSON_AddItemToObject()
1063 cJSON_free(item->string); in cJSON_AddItemToObject()
1064 item->string = cJSON_strdup(string); in cJSON_AddItemToObject()
1065 cJSON_AddItemToArray(object, item); in cJSON_AddItemToObject()
1067 void cJSON_AddItemToObjectCS(cJSON *object, const char *string, cJSON *item) { in cJSON_AddItemToObjectCS() argument
1068 if (!item) in cJSON_AddItemToObjectCS()
1070 if (!(item->type & cJSON_StringIsConst) && item->string) in cJSON_AddItemToObjectCS()
1071 cJSON_free(item->string); in cJSON_AddItemToObjectCS()
1072 item->string = (char *)string; in cJSON_AddItemToObjectCS()
1073 item->type |= cJSON_StringIsConst; in cJSON_AddItemToObjectCS()
1074 cJSON_AddItemToArray(object, item); in cJSON_AddItemToObjectCS()
1076 void cJSON_AddItemReferenceToArray(cJSON *array, cJSON *item) { in cJSON_AddItemReferenceToArray() argument
1077 cJSON_AddItemToArray(array, create_reference(item)); in cJSON_AddItemReferenceToArray()
1080 cJSON *item) { in cJSON_AddItemReferenceToObject() argument
1081 cJSON_AddItemToObject(object, string, create_reference(item)); in cJSON_AddItemReferenceToObject()
1163 cJSON *item = cJSON_New_Item(); in cJSON_CreateNull() local
1164 if (item) in cJSON_CreateNull()
1165 item->type = cJSON_NULL; in cJSON_CreateNull()
1166 return item; in cJSON_CreateNull()
1169 cJSON *item = cJSON_New_Item(); in cJSON_CreateTrue() local
1170 if (item) in cJSON_CreateTrue()
1171 item->type = cJSON_True; in cJSON_CreateTrue()
1172 return item; in cJSON_CreateTrue()
1175 cJSON *item = cJSON_New_Item(); in cJSON_CreateFalse() local
1176 if (item) in cJSON_CreateFalse()
1177 item->type = cJSON_False; in cJSON_CreateFalse()
1178 return item; in cJSON_CreateFalse()
1181 cJSON *item = cJSON_New_Item(); in cJSON_CreateBool() local
1182 if (item) in cJSON_CreateBool()
1183 item->type = b ? cJSON_True : cJSON_False; in cJSON_CreateBool()
1184 return item; in cJSON_CreateBool()
1187 cJSON *item = cJSON_New_Item(); in cJSON_CreateNumber() local
1188 if (item) { in cJSON_CreateNumber()
1189 item->type = cJSON_Number; in cJSON_CreateNumber()
1190 item->valuedouble = num; in cJSON_CreateNumber()
1191 item->valueint = (int)num; in cJSON_CreateNumber()
1193 return item; in cJSON_CreateNumber()
1196 cJSON *item = cJSON_New_Item(); in cJSON_CreateString() local
1197 if (item) { in cJSON_CreateString()
1198 item->type = cJSON_String; in cJSON_CreateString()
1199 item->valuestring = cJSON_strdup(string); in cJSON_CreateString()
1201 return item; in cJSON_CreateString()
1204 cJSON *item = cJSON_New_Item(); in cJSON_CreateArray() local
1205 if (item) in cJSON_CreateArray()
1206 item->type = cJSON_Array; in cJSON_CreateArray()
1207 return item; in cJSON_CreateArray()
1210 cJSON *item = cJSON_New_Item(); in cJSON_CreateObject() local
1211 if (item) in cJSON_CreateObject()
1212 item->type = cJSON_Object; in cJSON_CreateObject()
1213 return item; in cJSON_CreateObject()
1271 cJSON *cJSON_Duplicate(cJSON *item, int recurse) { in cJSON_Duplicate() argument
1274 if (!item) in cJSON_Duplicate()
1281 newitem->type = item->type & (~cJSON_IsReference), in cJSON_Duplicate()
1282 newitem->valueint = item->valueint, in cJSON_Duplicate()
1283 newitem->valuedouble = item->valuedouble; in cJSON_Duplicate()
1284 if (item->valuestring) { in cJSON_Duplicate()
1285 newitem->valuestring = cJSON_strdup(item->valuestring); in cJSON_Duplicate()
1291 if (item->string) { in cJSON_Duplicate()
1292 newitem->string = cJSON_strdup(item->string); in cJSON_Duplicate()
1302 cptr = item->child; in cJSON_Duplicate()