|
|
@ -38,6 +38,7 @@ extern "C" |
|
|
|
#define cJSON_String (1 << 4) |
|
|
|
#define cJSON_Array (1 << 5) |
|
|
|
#define cJSON_Object (1 << 6) |
|
|
|
#define cJSON_Raw (1 << 7) /* raw json */ |
|
|
|
|
|
|
|
#define cJSON_IsReference 256 |
|
|
|
#define cJSON_StringIsConst 512 |
|
|
@ -54,7 +55,7 @@ typedef struct cJSON |
|
|
|
/* The type of the item, as above. */ |
|
|
|
int type; |
|
|
|
|
|
|
|
/* The item's string, if type==cJSON_String */ |
|
|
|
/* The item's string, if type==cJSON_String and type == cJSON_Raw */ |
|
|
|
char *valuestring; |
|
|
|
/* The item's number, if type==cJSON_Number */ |
|
|
|
int valueint; |
|
|
@ -105,6 +106,8 @@ extern cJSON *cJSON_CreateFalse(void); |
|
|
|
extern cJSON *cJSON_CreateBool(int b); |
|
|
|
extern cJSON *cJSON_CreateNumber(double num); |
|
|
|
extern cJSON *cJSON_CreateString(const char *string); |
|
|
|
/* raw json */ |
|
|
|
extern cJSON *cJSON_CreateRaw(const char *raw); |
|
|
|
extern cJSON *cJSON_CreateArray(void); |
|
|
|
extern cJSON *cJSON_CreateObject(void); |
|
|
|
|
|
|
@ -155,6 +158,7 @@ extern void cJSON_Minify(char *json); |
|
|
|
#define cJSON_AddBoolToObject(object,name,b) cJSON_AddItemToObject(object, name, cJSON_CreateBool(b)) |
|
|
|
#define cJSON_AddNumberToObject(object,name,n) cJSON_AddItemToObject(object, name, cJSON_CreateNumber(n)) |
|
|
|
#define cJSON_AddStringToObject(object,name,s) cJSON_AddItemToObject(object, name, cJSON_CreateString(s)) |
|
|
|
#define cJSON_AddRawToObject(object,name,s) cJSON_AddItemToObject(object, name, cJSON_CreateRaw(s)) |
|
|
|
|
|
|
|
/* When assigning an integer value, it needs to be propagated to valuedouble too. */ |
|
|
|
#define cJSON_SetIntValue(object,val) ((object) ? (object)->valueint = (object)->valuedouble = (val) : (val)) |
|
|
|