From 010f33d4601fbafa099cebaf7cbcfba715496b3f Mon Sep 17 00:00:00 2001 From: dota17 Date: Mon, 20 Jan 2020 15:00:11 +0800 Subject: [PATCH] add json_object_new_null --- json_object.c | 5 +++++ json_object.h | 5 +++++ tests/test1.c | 6 +++++- tests/test1.expected | 1 + tests/test1Formatted_plain.expected | 1 + tests/test1Formatted_pretty.expected | 1 + tests/test1Formatted_spaced.expected | 1 + tests/test1Formatted_spaced_pretty.expected | 1 + tests/test1Formatted_spaced_pretty_pretty_tab.expected | 1 + 9 files changed, 21 insertions(+), 1 deletion(-) diff --git a/json_object.c b/json_object.c index 74d5266..458014c 100644 --- a/json_object.c +++ b/json_object.c @@ -1275,6 +1275,11 @@ static int json_array_equal(struct json_object* jso1, return 1; } +struct json_object* json_object_new_null() +{ + return NULL; +} + static int json_object_all_values_equal(struct json_object* jso1, struct json_object* jso2) { diff --git a/json_object.h b/json_object.h index 25cdd03..41d6d7e 100644 --- a/json_object.h +++ b/json_object.h @@ -965,6 +965,11 @@ JSON_EXPORT int json_object_set_string(json_object* obj, const char* new_value); */ JSON_EXPORT int json_object_set_string_len(json_object* obj, const char* new_value, int len); +/** Create a new empty json_object of type null and return NULL. + * + */ +JSON_EXPORT struct json_object* json_object_new_null(); + /** Check if two json_object's are equal * * If the passed objects are equal 1 will be returned. diff --git a/tests/test1.c b/tests/test1.c index 3ddaf72..ce1418b 100644 --- a/tests/test1.c +++ b/tests/test1.c @@ -137,7 +137,7 @@ void test_array_del_idx() int main(int argc, char **argv) { - json_object *my_string, *my_int, *my_object, *my_array; + json_object *my_string, *my_int, *my_null, *my_object, *my_array; size_t i; #ifdef TEST_FORMATTED int sflags = 0; @@ -179,6 +179,9 @@ int main(int argc, char **argv) printf("my_int=%d\n", json_object_get_int(my_int)); printf("my_int.to_string()=%s\n", json_object_to_json_string(my_int)); + my_null = json_object_new_null(); + printf("my_null.to_string()=%s\n", json_object_to_json_string(my_null)); + my_array = json_object_new_array(); json_object_array_add(my_array, json_object_new_int(1)); json_object_array_add(my_array, json_object_new_int(2)); @@ -249,6 +252,7 @@ int main(int argc, char **argv) json_object_put(my_string); json_object_put(my_int); + json_object_put(my_null); json_object_put(my_object); json_object_put(my_array); diff --git a/tests/test1.expected b/tests/test1.expected index e36d372..4cafba6 100644 --- a/tests/test1.expected +++ b/tests/test1.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 diff --git a/tests/test1Formatted_plain.expected b/tests/test1Formatted_plain.expected index 8a05723..6cbf356 100644 --- a/tests/test1Formatted_plain.expected +++ b/tests/test1Formatted_plain.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 diff --git a/tests/test1Formatted_pretty.expected b/tests/test1Formatted_pretty.expected index 809dfbe..766b04f 100644 --- a/tests/test1Formatted_pretty.expected +++ b/tests/test1Formatted_pretty.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 diff --git a/tests/test1Formatted_spaced.expected b/tests/test1Formatted_spaced.expected index 6afb39f..7ac0fb2 100644 --- a/tests/test1Formatted_spaced.expected +++ b/tests/test1Formatted_spaced.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 diff --git a/tests/test1Formatted_spaced_pretty.expected b/tests/test1Formatted_spaced_pretty.expected index 376da12..0b1f220 100644 --- a/tests/test1Formatted_spaced_pretty.expected +++ b/tests/test1Formatted_spaced_pretty.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 diff --git a/tests/test1Formatted_spaced_pretty_pretty_tab.expected b/tests/test1Formatted_spaced_pretty_pretty_tab.expected index d237669..5434544 100644 --- a/tests/test1Formatted_spaced_pretty_pretty_tab.expected +++ b/tests/test1Formatted_spaced_pretty_pretty_tab.expected @@ -12,6 +12,7 @@ my_string=foo my_string.to_string()="foo" my_int=9 my_int.to_string()=9 +my_null.to_string()=null my_array= [0]=1 [1]=2 -- 2.40.0