![]() |
Nilorea Library
C utilities for networking, threading, graphics
|
Implementation of the small public JSON wrapper over cJSON. More...
#include "nilorea/n_json.h"#include "nilorea/n_log.h"#include <stdlib.h>#include <string.h>#include "cJSON.h"#include "nilorea/n_str.h"
Include dependency graph for n_json.c:Go to the source code of this file.
Macros | |
| #define | AS_CJSON(p) ((cJSON*)(void*)(p)) |
| #define | AS_CONST_CJSON(p) ((const cJSON*)(const void*)(p)) |
| #define | AS_NJSON(p) ((N_JSON*)(void*)(p)) |
Functions | |
| N_JSON * | n_json_array_at (const N_JSON *arr, size_t i) |
| Get an array element by index. | |
| size_t | n_json_array_size (const N_JSON *arr) |
| Number of elements in an array node. | |
| const char * | n_json_as_string (const N_JSON *v, const char *dflt) |
| Get the string value of a node itself (e.g. | |
| int | n_json_bool (const N_JSON *obj, const char *key, int dflt) |
| Get a boolean member, or a default when absent/not a boolean. | |
| void | n_json_free (N_JSON **root) |
| Free a JSON tree and NULL the caller's pointer. | |
| N_JSON * | n_json_get (const N_JSON *obj, const char *key) |
| Get a child member of an object by key (case-sensitive). | |
| long | n_json_int (const N_JSON *obj, const char *key, long dflt) |
| Get a numeric member as a long, or a default when absent/not a number. | |
| int | n_json_is_array (const N_JSON *v) |
| Report whether a node is a JSON array. | |
| int | n_json_is_object (const N_JSON *v) |
| Report whether a node is a JSON object. | |
| N_JSON * | n_json_parse (const char *text) |
| Parse a JSON document from a NUL-terminated string. | |
| N_JSON * | n_json_parse_file (const char *path) |
| Parse a JSON document from a file. | |
| const char * | n_json_string (const N_JSON *obj, const char *key, const char *dflt) |
| Get a string member, or a default when absent/not a string. | |
| char * | n_json_string_dup (const N_JSON *obj, const char *key) |
| Duplicate a string member (caller frees), or NULL when absent. | |
Implementation of the small public JSON wrapper over cJSON.
Definition in file n_json.c.
| #define AS_CONST_CJSON | ( | p | ) | ((const cJSON*)(const void*)(p)) |