From: Eric Haszlakiewicz Date: Tue, 5 Dec 2017 14:20:59 +0000 (-0500) Subject: Deprecated a few typedefs, add docs on json_object_iter, move json_number_chars and... X-Git-Tag: json-c-0.13-20171207~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=11ab365324312af38b6a972c4cc84069ad3a9dbb;p=thirdparty%2Fjson-c.git Deprecated a few typedefs, add docs on json_object_iter, move json_number_chars and json_hex-chars to json_object_private.h. --- diff --git a/json_object.h b/json_object.h index 83ce0660..3141a429 100644 --- a/json_object.h +++ b/json_object.h @@ -129,26 +129,35 @@ extern "C" { */ #define JSON_C_OPTION_THREAD (1) -extern const char *json_number_chars; -extern const char *json_hex_chars; - -/* CAW: added for ANSI C iteration correctness */ +/** + * A structure to use with json_object_object_foreachC() loops. + * Contains key, val and entry members. + */ struct json_object_iter { char *key; struct json_object *val; struct lh_entry *entry; }; +typedef struct json_object_iter json_object_iter; /* forward structure definitions */ -typedef int json_bool; +/** + * @deprecated Unused in json-c sources + */ typedef struct printbuf printbuf; +/** + * @deprecated Unused in json-c sources + */ typedef struct lh_table lh_table; +/** + * @deprecated Unused in json-c sources + */ typedef struct array_list array_list; + +typedef int json_bool; typedef struct json_object json_object; -typedef struct json_object_iter json_object_iter; -typedef struct json_tokener json_tokener; /** * Type of custom user delete functions. See json_object_set_serializer. @@ -531,7 +540,7 @@ JSON_EXPORT void json_object_object_del(struct json_object* obj, const char *key /** Iterate through all keys and values of an object (ANSI C Safe) * @param obj the json_object instance - * @param iter the object iterator + * @param iter the object iterator, use type json_object_iter */ #define json_object_object_foreachC(obj,iter) \ for(iter.entry = json_object_get_object(obj)->head; \ diff --git a/json_object_private.h b/json_object_private.h index 325005a3..0abbca21 100644 --- a/json_object_private.h +++ b/json_object_private.h @@ -50,6 +50,9 @@ struct json_object void _json_c_set_last_err(const char *err_fmt, ...); +extern const char *json_number_chars; +extern const char *json_hex_chars; + #ifdef __cplusplus } #endif diff --git a/json_tokener.c b/json_tokener.c index 620468e4..449a82da 100644 --- a/json_tokener.c +++ b/json_tokener.c @@ -29,6 +29,7 @@ #include "arraylist.h" #include "json_inttypes.h" #include "json_object.h" +#include "json_object_private.h" #include "json_tokener.h" #include "json_util.h" #include "strdup_compat.h" @@ -94,7 +95,7 @@ const char *json_tokener_error_desc(enum json_tokener_error jerr) return json_tokener_errors[jerr]; } -enum json_tokener_error json_tokener_get_error(json_tokener *tok) +enum json_tokener_error json_tokener_get_error(struct json_tokener *tok) { return tok->err; } diff --git a/json_tokener.h b/json_tokener.h index 414c9d6e..0ae44899 100644 --- a/json_tokener.h +++ b/json_tokener.h @@ -86,6 +86,10 @@ struct json_tokener struct json_tokener_srec *stack; int flags; }; +/** + * @deprecated Unused in json-c code + */ +typedef struct json_tokener json_tokener; /** * Be strict when parsing JSON input. Use caution with diff --git a/tests/test_parse.c b/tests/test_parse.c index c68e1233..ee1f8387 100644 --- a/tests/test_parse.c +++ b/tests/test_parse.c @@ -296,7 +296,7 @@ static void test_incremental_parse() { json_object *new_obj; enum json_tokener_error jerr; - json_tokener *tok; + struct json_tokener *tok; const char *string_to_parse; int ii; int num_ok, num_error;