X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=src%2Fjansson.h;h=73f6ce03dd588c4cfbd8840a782be1de2234d234;hb=38950b081cae9b231b5474d4cb861f8fa2b1d099;hp=607dfb5c12bcab351f2b32e27e7d2ff219d7f8ad;hpb=e7a5dc58e630aa079f402b46a65d218e656dd489;p=jansson.git diff --git a/src/jansson.h b/src/jansson.h index 607dfb5..73f6ce0 100644 --- a/src/jansson.h +++ b/src/jansson.h @@ -49,6 +49,7 @@ typedef struct { json_t *json_object(void); json_t *json_array(void); json_t *json_string(const char *value); +json_t *json_string_nocheck(const char *value); json_t *json_integer(int value); json_t *json_real(double value); json_t *json_true(void); @@ -77,6 +78,7 @@ static inline void json_decref(json_t *json) unsigned int json_object_size(const json_t *object); json_t *json_object_get(const json_t *object, const char *key); int json_object_set_new(json_t *object, const char *key, json_t *value); +int json_object_set_new_nocheck(json_t *object, const char *key, json_t *value); int json_object_del(json_t *object, const char *key); int json_object_clear(json_t *object); int json_object_update(json_t *object, json_t *other); @@ -91,6 +93,12 @@ int json_object_set(json_t *object, const char *key, json_t *value) return json_object_set_new(object, key, json_incref(value)); } +static inline +int json_object_set_nocheck(json_t *object, const char *key, json_t *value) +{ + return json_object_set_new_nocheck(object, key, json_incref(value)); +} + unsigned int json_array_size(const json_t *array); json_t *json_array_get(const json_t *array, unsigned int index); int json_array_set_new(json_t *array, unsigned int index, json_t *value); @@ -123,9 +131,21 @@ int json_integer_value(const json_t *integer); double json_real_value(const json_t *real); double json_number_value(const json_t *json); -int json_string_set(const json_t *string, const char *value); -int json_integer_set(const json_t *integer, int value); -int json_real_set(const json_t *real, double value); +int json_string_set(json_t *string, const char *value); +int json_string_set_nocheck(json_t *string, const char *value); +int json_integer_set(json_t *integer, int value); +int json_real_set(json_t *real, double value); + + +/* equality */ + +int json_equal(json_t *value1, json_t *value2); + + +/* copying */ + +json_t *json_copy(json_t *value); +json_t *json_deep_copy(json_t *value); /* loading, printing */