|
@@ -120,10 +120,10 @@ extern cJSON *cJSON_Duplicate(cJSON *item,int recurse);
|
|
|
need to be released. With recurse!=0, it will duplicate any children connected to the item.
|
|
|
The item->next and ->prev pointers are always zero on return from Duplicate. */
|
|
|
|
|
|
-/* ParseWithOpts allows you to require (and check) that the JSON is null terminated, and to retrieve the pointer to the final byte parsed */
|
|
|
+/* ParseWithOpts allows you to require (and check) that the JSON is null terminated, and to retrieve the pointer to the final byte parsed. */
|
|
|
extern cJSON *cJSON_ParseWithOpts(const char *value,const char **return_parse_end,int require_null_terminated);
|
|
|
|
|
|
-
|
|
|
+/* Macros for creating things quickly. */
|
|
|
#define cJSON_AddNullToObject(object,name) cJSON_AddItemToObject(object, name, cJSON_CreateNull())
|
|
|
#define cJSON_AddTrueToObject(object,name) cJSON_AddItemToObject(object, name, cJSON_CreateTrue())
|
|
|
#define cJSON_AddFalseToObject(object,name) cJSON_AddItemToObject(object, name, cJSON_CreateFalse())
|
|
@@ -131,6 +131,9 @@ extern cJSON *cJSON_ParseWithOpts(const char *value,const char **return_parse_en
|
|
|
#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))
|
|
|
|
|
|
+/* 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))
|
|
|
+
|
|
|
#ifdef __cplusplus
|
|
|
}
|
|
|
#endif
|