Loading...
Searching...
No Matches
parson.h File Reference
`#include <stddef.h>`
Include dependency graph for parson.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Macros

#define | PARSON_VERSION_MAJOR 1
#define | PARSON_VERSION_MINOR 5
#define | PARSON_VERSION_PATCH 3
#define | PARSON_VERSION_STRING "1.5.3"

## Typedefs

typedef struct json_object_t | JSON_Object
typedef struct json_array_t | JSON_Array
typedef struct json_value_t | JSON_Value
typedef int | JSON_Value_Type
typedef int | JSON_Status
typedef void *(* | JSON_Malloc_Function) (size_t)
typedef void(* | JSON_Free_Function) (void *)
typedef int(* | JSON_Number_Serialization_Function) (double num, char *buf)

## Enumerations

enum | json_value_type { JSONError = -1 , JSONNull = 1 , JSONString = 2 , JSONNumber = 3 , JSONObject = 4 , JSONArray = 5 , JSONBoolean = 6 }
enum | json_result_t { JSONSuccess = 0 , JSONFailure = -1 }

## Functions

void | json_set_allocation_functions (JSON_Malloc_Function malloc_fun, JSON_Free_Function free_fun)
void | json_set_escape_slashes (int escape_slashes)
void | json_set_float_serialization_format (const char *format)
void | json_set_number_serialization_function (JSON_Number_Serialization_Function fun)
JSON_Value * | json_parse_file (const char *filename)
JSON_Value * | json_parse_file_with_comments (const char *filename)
JSON_Value * | json_parse_string (const char *string)
JSON_Value * | json_parse_string_with_comments (const char *string)
size_t | json_serialization_size (const JSON_Value *value)
JSON_Status | json_serialize_to_buffer (const JSON_Value *value, char *buf, size_t buf_size_in_bytes)
JSON_Status | json_serialize_to_file (const JSON_Value *value, const char *filename)
char * | json_serialize_to_string (const JSON_Value *value)
size_t | json_serialization_size_pretty (const JSON_Value *value)
JSON_Status | json_serialize_to_buffer_pretty (const JSON_Value *value, char *buf, size_t buf_size_in_bytes)
JSON_Status | json_serialize_to_file_pretty (const JSON_Value *value, const char *filename)
char * | json_serialize_to_string_pretty (const JSON_Value *value)
void | json_free_serialized_string (char *string)
int | json_value_equals (const JSON_Value *a, const JSON_Value *b)
JSON_Status | json_validate (const JSON_Value *schema, const JSON_Value *value)
JSON_Value * | json_object_get_value (const JSON_Object *object, const char *name)
const char * | json_object_get_string (const JSON_Object *object, const char *name)
size_t | json_object_get_string_len (const JSON_Object *object, const char *name)
JSON_Object * | json_object_get_object (const JSON_Object *object, const char *name)
JSON_Array * | json_object_get_array (const JSON_Object *object, const char *name)
double | json_object_get_number (const JSON_Object *object, const char *name)
int | json_object_get_boolean (const JSON_Object *object, const char *name)
JSON_Value * | json_object_dotget_value (const JSON_Object *object, const char *name)
const char * | json_object_dotget_string (const JSON_Object *object, const char *name)
size_t | json_object_dotget_string_len (const JSON_Object *object, const char *name)
JSON_Object * | json_object_dotget_object (const JSON_Object *object, const char *name)
JSON_Array * | json_object_dotget_array (const JSON_Object *object, const char *name)
double | json_object_dotget_number (const JSON_Object *object, const char *name)
int | json_object_dotget_boolean (const JSON_Object *object, const char *name)
size_t | json_object_get_count (const JSON_Object *object)
const char * | json_object_get_name (const JSON_Object *object, size_t index)
JSON_Value * | json_object_get_value_at (const JSON_Object *object, size_t index)
JSON_Value * | json_object_get_wrapping_value (const JSON_Object *object)
int | json_object_has_value (const JSON_Object *object, const char *name)
int | json_object_has_value_of_type (const JSON_Object *object, const char *name, JSON_Value_Type type)
int | json_object_dothas_value (const JSON_Object *object, const char *name)
int | json_object_dothas_value_of_type (const JSON_Object *object, const char *name, JSON_Value_Type type)
JSON_Status | json_object_set_value (JSON_Object *object, const char *name, JSON_Value *value)
JSON_Status | json_object_set_string (JSON_Object *object, const char *name, const char *string)
JSON_Status | json_object_set_string_with_len (JSON_Object *object, const char *name, const char *string, size_t len)
JSON_Status | json_object_set_number (JSON_Object *object, const char *name, double number)
JSON_Status | json_object_set_boolean (JSON_Object *object, const char *name, int boolean)
JSON_Status | json_object_set_null (JSON_Object *object, const char *name)
JSON_Status | json_object_dotset_value (JSON_Object *object, const char *name, JSON_Value *value)
JSON_Status | json_object_dotset_string (JSON_Object *object, const char *name, const char *string)
JSON_Status | json_object_dotset_string_with_len (JSON_Object *object, const char *name, const char *string, size_t len)
JSON_Status | json_object_dotset_number (JSON_Object *object, const char *name, double number)
JSON_Status | json_object_dotset_boolean (JSON_Object *object, const char *name, int boolean)
JSON_Status | json_object_dotset_null (JSON_Object *object, const char *name)
JSON_Status | json_object_remove (JSON_Object *object, const char *name)
JSON_Status | json_object_dotremove (JSON_Object *object, const char *key)
JSON_Status | json_object_clear (JSON_Object *object)
JSON_Value * | json_array_get_value (const JSON_Array *array, size_t index)
const char * | json_array_get_string (const JSON_Array *array, size_t index)
size_t | json_array_get_string_len (const JSON_Array *array, size_t index)
JSON_Object * | json_array_get_object (const JSON_Array *array, size_t index)
JSON_Array * | json_array_get_array (const JSON_Array *array, size_t index)
double | json_array_get_number (const JSON_Array *array, size_t index)
int | json_array_get_boolean (const JSON_Array *array, size_t index)
size_t | json_array_get_count (const JSON_Array *array)
JSON_Value * | json_array_get_wrapping_value (const JSON_Array *array)
JSON_Status | json_array_remove (JSON_Array *array, size_t i)
JSON_Status | json_array_replace_value (JSON_Array *array, size_t i, JSON_Value *value)
JSON_Status | json_array_replace_string (JSON_Array *array, size_t i, const char *string)
JSON_Status | json_array_replace_string_with_len (JSON_Array *array, size_t i, const char *string, size_t len)
JSON_Status | json_array_replace_number (JSON_Array *array, size_t i, double number)
JSON_Status | json_array_replace_boolean (JSON_Array *array, size_t i, int boolean)
JSON_Status | json_array_replace_null (JSON_Array *array, size_t i)
JSON_Status | json_array_clear (JSON_Array *array)
JSON_Status | json_array_append_value (JSON_Array *array, JSON_Value *value)
JSON_Status | json_array_append_string (JSON_Array *array, const char *string)
JSON_Status | json_array_append_string_with_len (JSON_Array *array, const char *string, size_t len)
JSON_Status | json_array_append_number (JSON_Array *array, double number)
JSON_Status | json_array_append_boolean (JSON_Array *array, int boolean)
JSON_Status | json_array_append_null (JSON_Array *array)
JSON_Value * | json_value_init_object (void)
JSON_Value * | json_value_init_array (void)
JSON_Value * | json_value_init_string (const char *string)
JSON_Value * | json_value_init_string_with_len (const char *string, size_t length)
JSON_Value * | json_value_init_number (double number)
JSON_Value * | json_value_init_boolean (int boolean)
JSON_Value * | json_value_init_null (void)
JSON_Value * | json_value_deep_copy (const JSON_Value *value)
void | json_value_free (JSON_Value *value)
JSON_Value_Type | json_value_get_type (const JSON_Value *value)
JSON_Object * | json_value_get_object (const JSON_Value *value)
JSON_Array * | json_value_get_array (const JSON_Value *value)
const char * | json_value_get_string (const JSON_Value *value)
size_t | json_value_get_string_len (const JSON_Value *value)
double | json_value_get_number (const JSON_Value *value)
int | json_value_get_boolean (const JSON_Value *value)
JSON_Value * | json_value_get_parent (const JSON_Value *value)
JSON_Value_Type | json_type (const JSON_Value *value)
JSON_Object * | json_object (const JSON_Value *value)
JSON_Array * | json_array (const JSON_Value *value)
const char * | json_string (const JSON_Value *value)
size_t | json_string_len (const JSON_Value *value)
double | json_number (const JSON_Value *value)
int | json_boolean (const JSON_Value *value)

## Macro Definition Documentation

## PARSON_VERSION_MAJOR

#define PARSON_VERSION_MAJOR 1

Definition at line 36 of file parson.h.

## PARSON_VERSION_MINOR

#define PARSON_VERSION_MINOR 5

Definition at line 37 of file parson.h.

## PARSON_VERSION_PATCH

#define PARSON_VERSION_PATCH 3

Definition at line 38 of file parson.h.

## PARSON_VERSION_STRING

#define PARSON_VERSION_STRING "1.5.3"

Definition at line 40 of file parson.h.

## Typedef Documentation

## JSON_Array

typedef struct json_array_t JSON_Array

Definition at line 46 of file parson.h.

## JSON_Free_Function

typedef void(* JSON_Free_Function) (void *)

Definition at line 64 of file parson.h.

## JSON_Malloc_Function

typedef void *(* JSON_Malloc_Function) (size_t)

Definition at line 63 of file parson.h.

## JSON_Number_Serialization_Function

typedef int(* JSON_Number_Serialization_Function) (double num, char *buf)

Definition at line 71 of file parson.h.

## JSON_Object

typedef struct json_object_t JSON_Object

Definition at line 45 of file parson.h.

## JSON_Status

typedef int JSON_Status

Definition at line 61 of file parson.h.

## JSON_Value

typedef struct json_value_t JSON_Value

Definition at line 47 of file parson.h.

## JSON_Value_Type

typedef int JSON_Value_Type

Definition at line 58 of file parson.h.

## Enumeration Type Documentation

## json_result_t

enum json_result_t

Enumerator
JSONSuccess |
JSONFailure |

Definition at line 60 of file parson.h.

## json_value_type

enum json_value_type

Enumerator
JSONError |
JSONNull |
JSONString |
JSONNumber |
JSONObject |
JSONArray |
JSONBoolean |

Definition at line 49 of file parson.h.

## Function Documentation

## json_array()

JSON_Array * json_array | ( | const JSON_Value * | value | ) |

Definition at line 2804 of file parson.c.

References json_value_get_array().

Referenced by G_json_array().

## json_array_append_boolean()

JSON_Status json_array_append_boolean | ( | JSON_Array * | array,
|  | int | boolean )

Definition at line 2378 of file parson.c.

References json_array_append_value(), json_value_free(), json_value_init_boolean(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_array_append_boolean().

## json_array_append_null()

JSON_Status json_array_append_null | ( | JSON_Array * | array | ) |

Definition at line 2391 of file parson.c.

References json_array_append_value(), json_value_free(), json_value_init_null(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_array_append_null().

## json_array_append_number()

JSON_Status json_array_append_number | ( | JSON_Array * | array,
|  | double | number )

Definition at line 2365 of file parson.c.

References json_array_append_value(), json_value_free(), json_value_init_number(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_array_append_number().

## json_array_append_string()

JSON_Status json_array_append_string | ( | JSON_Array * | array,
|  | const char * | string )

Definition at line 2338 of file parson.c.

References json_array_append_value(), json_value_free(), json_value_init_string(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_array_append_string().

## json_array_append_string_with_len()

JSON_Status json_array_append_string_with_len | ( | JSON_Array * | array,
|  | const char * | string,
|  | size_t | len )

Definition at line 2351 of file parson.c.

References json_array_append_value(), json_value_free(), json_value_init_string_with_len(), JSONFailure, JSONSuccess, and NULL.

## json_array_append_value()

JSON_Status json_array_append_value | ( | JSON_Array * | array,
|  | JSON_Value * | value )

Definition at line 2330 of file parson.c.

References JSONFailure, and NULL.

Referenced by G_json_array_append_value(), json_array_append_boolean(), json_array_append_null(), json_array_append_number(), json_array_append_string(), and json_array_append_string_with_len().

## json_array_clear()

JSON_Status json_array_clear | ( | JSON_Array * | array | ) |

Definition at line 2317 of file parson.c.

References json_array_get_count(), json_array_get_value(), json_value_free(), JSONFailure, JSONSuccess, and NULL.

## json_array_get_array()

JSON_Array * json_array_get_array | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1793 of file parson.c.

References json_array_get_value(), and json_value_get_array().

## json_array_get_boolean()

int json_array_get_boolean | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1798 of file parson.c.

References json_array_get_value(), and json_value_get_boolean().

Referenced by G_json_array_get_boolean().

## json_array_get_count()

size_t json_array_get_count | ( | const JSON_Array * | array | ) |

Definition at line 1803 of file parson.c.

Referenced by json_array_clear(), json_array_get_value(), json_array_remove(), json_array_replace_value(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_array_get_number()

double json_array_get_number | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1783 of file parson.c.

References json_array_get_value(), and json_value_get_number().

Referenced by G_json_array_get_number().

## json_array_get_object()

JSON_Object * json_array_get_object | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1788 of file parson.c.

References json_array_get_value(), and json_value_get_object().

## json_array_get_string()

const char * json_array_get_string | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1773 of file parson.c.

References json_array_get_value(), and json_value_get_string().

Referenced by G_json_array_get_string().

## json_array_get_string_len()

size_t json_array_get_string_len | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1778 of file parson.c.

References json_array_get_value(), and json_value_get_string_len().

## json_array_get_value()

JSON_Value * json_array_get_value | ( | const JSON_Array * | array,
|  | size_t | index )

Definition at line 1765 of file parson.c.

References json_array_get_count(), and NULL.

Referenced by G_json_array_get_value(), json_array_clear(), json_array_get_array(), json_array_get_boolean(), json_array_get_number(), json_array_get_object(), json_array_get_string(), json_array_get_string_len(), json_array_remove(), json_array_replace_value(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_array_get_wrapping_value()

JSON_Value * json_array_get_wrapping_value | ( | const JSON_Array * | array | ) |

Definition at line 1808 of file parson.c.

References NULL.

Referenced by json_array_replace_value().

## json_array_remove()

JSON_Status json_array_remove | ( | JSON_Array * | array,
|  | size_t | i )

Definition at line 2222 of file parson.c.

References json_array_get_count(), json_array_get_value(), json_value_free(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_boolean()

JSON_Status json_array_replace_boolean | ( | JSON_Array * | array,
|  | size_t | i,
|  | int | boolean )

Definition at line 2291 of file parson.c.

References json_array_replace_value(), json_value_free(), json_value_init_boolean(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_null()

JSON_Status json_array_replace_null | ( | JSON_Array * | array,
|  | size_t | i )

Definition at line 2304 of file parson.c.

References json_array_replace_value(), json_value_free(), json_value_init_null(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_number()

JSON_Status json_array_replace_number | ( | JSON_Array * | array,
|  | size_t | i,
|  | double | number )

Definition at line 2277 of file parson.c.

References json_array_replace_value(), json_value_free(), json_value_init_number(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_string()

JSON_Status json_array_replace_string | ( | JSON_Array * | array,
|  | size_t | i,
|  | const char * | string )

Definition at line 2249 of file parson.c.

References json_array_replace_value(), json_value_free(), json_value_init_string(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_string_with_len()

JSON_Status json_array_replace_string_with_len | ( | JSON_Array * | array,
|  | size_t | i,
|  | const char * | string,
|  | size_t | len )

Definition at line 2263 of file parson.c.

References json_array_replace_value(), json_value_free(), json_value_init_string_with_len(), JSONFailure, JSONSuccess, and NULL.

## json_array_replace_value()

JSON_Status json_array_replace_value | ( | JSON_Array * | array,
|  | size_t | i,
|  | JSON_Value * | value )

Definition at line 2236 of file parson.c.

References json_array_get_count(), json_array_get_value(), json_array_get_wrapping_value(), json_value_free(), JSONFailure, JSONSuccess, and NULL.

Referenced by json_array_replace_boolean(), json_array_replace_null(), json_array_replace_number(), json_array_replace_string(), and json_array_replace_string_with_len().

## json_boolean()

int json_boolean | ( | const JSON_Value * | value | ) |

Definition at line 2824 of file parson.c.

References json_value_get_boolean().

## json_free_serialized_string()

void json_free_serialized_string | ( | char * | string | ) |

Definition at line 2217 of file parson.c.

Referenced by G_json_free_serialized_string(), json_serialize_to_file(), json_serialize_to_file_pretty(), json_serialize_to_string(), and json_serialize_to_string_pretty().

## json_number()

double json_number | ( | const JSON_Value * | value | ) |

Definition at line 2819 of file parson.c.

References json_value_get_number().

## json_object()

JSON_Object * json_object | ( | const JSON_Value * | value | ) |

Definition at line 2799 of file parson.c.

References json_value_get_object().

Referenced by G_json_object().

## json_object_clear()

JSON_Status json_object_clear | ( | JSON_Object * | object | ) |

Definition at line 2639 of file parson.c.

References json_object_get_count(), json_value_free(), JSONFailure, JSONSuccess, NULL, and OBJECT_INVALID_IX.

## json_object_dotget_array()

JSON_Array * json_object_dotget_array | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1700 of file parson.c.

References json_object_dotget_value(), json_value_get_array(), and name.

## json_object_dotget_boolean()

int json_object_dotget_boolean | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1706 of file parson.c.

References json_object_dotget_value(), json_value_get_boolean(), and name.

## json_object_dotget_number()

double json_object_dotget_number | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1689 of file parson.c.

References json_object_dotget_value(), json_value_get_number(), and name.

Referenced by G_json_object_dotget_number().

## json_object_dotget_object()

JSON_Object * json_object_dotget_object | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1694 of file parson.c.

References json_object_dotget_value(), json_value_get_object(), and name.

## json_object_dotget_string()

const char * json_object_dotget_string | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1677 of file parson.c.

References json_object_dotget_value(), json_value_get_string(), and name.

Referenced by G_json_object_dotget_string().

## json_object_dotget_string_len()

size_t json_object_dotget_string_len | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1683 of file parson.c.

References json_object_dotget_value(), json_value_get_string_len(), and name.

## json_object_dotget_value()

JSON_Value * json_object_dotget_value | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1665 of file parson.c.

References json_object_dotget_value(), json_object_get_value(), json_value_get_object(), and name.

Referenced by json_object_dotget_array(), json_object_dotget_boolean(), json_object_dotget_number(), json_object_dotget_object(), json_object_dotget_string(), json_object_dotget_string_len(), json_object_dotget_value(), json_object_dothas_value(), and json_object_dothas_value_of_type().

## json_object_dothas_value()

int json_object_dothas_value | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1752 of file parson.c.

References json_object_dotget_value(), name, and NULL.

## json_object_dothas_value_of_type()

int json_object_dothas_value_of_type | ( | const JSON_Object * | object,
|  | const char * | name,
|  | JSON_Value_Type | type )

Definition at line 1757 of file parson.c.

References json_object_dotget_value(), json_value_get_type(), name, and NULL.

## json_object_dotremove()

JSON_Status json_object_dotremove | ( | JSON_Object * | object,
|  | const char * | key )

Definition at line 2634 of file parson.c.

References name, and PARSON_TRUE.

## json_object_dotset_boolean()

JSON_Status json_object_dotset_boolean | ( | JSON_Object * | object,
|  | const char * | name,
|  | int | boolean )

Definition at line 2602 of file parson.c.

References json_object_dotset_value(), json_value_free(), json_value_init_boolean(), JSONFailure, JSONSuccess, name, and NULL.

## json_object_dotset_null()

JSON_Status json_object_dotset_null | ( | JSON_Object * | object,
|  | const char * | name )

Definition at line 2616 of file parson.c.

References json_object_dotset_value(), json_value_free(), json_value_init_null(), JSONFailure, JSONSuccess, name, and NULL.

Referenced by G_json_object_dotset_null().

## json_object_dotset_number()

JSON_Status json_object_dotset_number | ( | JSON_Object * | object,
|  | const char * | name,
|  | double | number )

Definition at line 2588 of file parson.c.

References json_object_dotset_value(), json_value_free(), json_value_init_number(), JSONFailure, JSONSuccess, name, and NULL.

Referenced by G_json_object_dotset_number().

## json_object_dotset_string()

JSON_Status json_object_dotset_string | ( | JSON_Object * | object,
|  | const char * | name,
|  | const char * | string )

Definition at line 2559 of file parson.c.

References json_object_dotset_value(), json_value_free(), json_value_init_string(), JSONFailure, JSONSuccess, name, and NULL.

Referenced by G_json_object_dotset_string().

## json_object_dotset_string_with_len()

JSON_Status json_object_dotset_string_with_len | ( | JSON_Object * | object,
|  | const char * | name,
|  | const char * | string,
|  | size_t | len )

Definition at line 2573 of file parson.c.

References json_object_dotset_value(), json_value_free(), json_value_init_string_with_len(), JSONFailure, JSONSuccess, name, and NULL.

## json_object_dotset_value()

JSON_Status json_object_dotset_value | ( | JSON_Object * | object,
|  | const char * | name,
|  | JSON_Value * | value )

Definition at line 2505 of file parson.c.

References json_object_dotset_value(), json_object_set_value(), json_value_free(), json_value_get_object(), json_value_get_type(), json_value_init_object(), JSONFailure, JSONObject, JSONSuccess, name, and NULL.

Referenced by json_object_dotset_boolean(), json_object_dotset_null(), json_object_dotset_number(), json_object_dotset_string(), json_object_dotset_string_with_len(), and json_object_dotset_value().

## json_object_get_array()

JSON_Array * json_object_get_array | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1655 of file parson.c.

References json_object_get_value(), json_value_get_array(), and name.

Referenced by G_json_object_get_array().

## json_object_get_boolean()

int json_object_get_boolean | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1660 of file parson.c.

References json_object_get_value(), json_value_get_boolean(), and name.

Referenced by G_json_object_get_boolean().

## json_object_get_count()

size_t json_object_get_count | ( | const JSON_Object * | object | ) |

Definition at line 1711 of file parson.c.

Referenced by json_object_clear(), json_object_get_name(), json_object_get_value_at(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_object_get_name()

const char * json_object_get_name | ( | const JSON_Object * | object,
|  | size_t | index )

Definition at line 1716 of file parson.c.

References json_object_get_count(), and NULL.

Referenced by json_validate(), json_value_deep_copy(), and json_value_equals().

## json_object_get_number()

double json_object_get_number | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1645 of file parson.c.

References json_object_get_value(), json_value_get_number(), and name.

Referenced by G_json_object_get_number().

## json_object_get_object()

JSON_Object * json_object_get_object | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1650 of file parson.c.

References json_object_get_value(), json_value_get_object(), and name.

Referenced by G_json_object_get_object().

## json_object_get_string()

const char * json_object_get_string | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1635 of file parson.c.

References json_object_get_value(), json_value_get_string(), and name.

Referenced by G_json_object_get_string().

## json_object_get_string_len()

size_t json_object_get_string_len | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1640 of file parson.c.

References json_object_get_value(), json_value_get_string_len(), and name.

## json_object_get_value()

JSON_Value * json_object_get_value | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1627 of file parson.c.

References name, and NULL.

Referenced by G_json_object_get_value(), json_object_dotget_value(), json_object_get_array(), json_object_get_boolean(), json_object_get_number(), json_object_get_object(), json_object_get_string(), json_object_get_string_len(), json_object_has_value(), json_object_has_value_of_type(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_object_get_value_at()

JSON_Value * json_object_get_value_at | ( | const JSON_Object * | object,
|  | size_t | index )

Definition at line 1724 of file parson.c.

References json_object_get_count(), and NULL.

## json_object_get_wrapping_value()

JSON_Value * json_object_get_wrapping_value | ( | const JSON_Object * | object | ) |

Definition at line 1732 of file parson.c.

References NULL.

Referenced by G_json_object_get_wrapping_value(), and json_object_set_value().

## json_object_has_value()

int json_object_has_value | ( | const JSON_Object * | object,
|  | const char * | name )

Definition at line 1740 of file parson.c.

References json_object_get_value(), name, and NULL.

## json_object_has_value_of_type()

int json_object_has_value_of_type | ( | const JSON_Object * | object,
|  | const char * | name,
|  | JSON_Value_Type | type )

Definition at line 1745 of file parson.c.

References json_object_get_value(), json_value_get_type(), name, and NULL.

## json_object_remove()

JSON_Status json_object_remove | ( | JSON_Object * | object,
|  | const char * | name )

Definition at line 2629 of file parson.c.

References name, and PARSON_TRUE.

## json_object_set_boolean()

JSON_Status json_object_set_boolean | ( | JSON_Object * | object,
|  | const char * | name,
|  | int | boolean )

Definition at line 2484 of file parson.c.

References json_object_set_value(), json_value_free(), json_value_init_boolean(), JSONSuccess, and name.

Referenced by G_json_object_set_boolean().

## json_object_set_null()

JSON_Status json_object_set_null | ( | JSON_Object * | object,
|  | const char * | name )

Definition at line 2495 of file parson.c.

References json_object_set_value(), json_value_free(), json_value_init_null(), JSONSuccess, and name.

Referenced by G_json_object_set_null().

## json_object_set_number()

JSON_Status json_object_set_number | ( | JSON_Object * | object,
|  | const char * | name,
|  | double | number )

Definition at line 2473 of file parson.c.

References json_object_set_value(), json_value_free(), json_value_init_number(), JSONSuccess, and name.

Referenced by G_json_object_set_number().

## json_object_set_string()

JSON_Status json_object_set_string | ( | JSON_Object * | object,
|  | const char * | name,
|  | const char * | string )

Definition at line 2450 of file parson.c.

References json_object_set_value(), json_value_free(), json_value_init_string(), JSONSuccess, and name.

Referenced by G_json_object_set_string().

## json_object_set_string_with_len()

JSON_Status json_object_set_string_with_len | ( | JSON_Object * | object,
|  | const char * | name,
|  | const char * | string,
|  | size_t | len )

Definition at line 2461 of file parson.c.

References json_object_set_value(), json_value_free(), json_value_init_string_with_len(), JSONSuccess, and name.

## json_object_set_value()

JSON_Status json_object_set_value | ( | JSON_Object * | object,
|  | const char * | name,
|  | JSON_Value * | value )

Definition at line 2404 of file parson.c.

References json_object_get_wrapping_value(), json_value_free(), JSONFailure, JSONSuccess, name, NULL, and PARSON_FALSE.

Referenced by G_json_object_set_value(), json_object_dotset_value(), json_object_set_boolean(), json_object_set_null(), json_object_set_number(), json_object_set_string(), and json_object_set_string_with_len().

## json_parse_file()

JSON_Value * json_parse_file | ( | const char * | filename | ) |

Definition at line 1574 of file parson.c.

References json_parse_string(), and NULL.

## json_parse_file_with_comments()

JSON_Value * json_parse_file_with_comments | ( | const char * | filename | ) |

Definition at line 1586 of file parson.c.

References json_parse_string_with_comments(), and NULL.

## json_parse_string()

JSON_Value * json_parse_string | ( | const char * | string | ) |

Definition at line 1598 of file parson.c.

References NULL.

Referenced by json_parse_file().

## json_parse_string_with_comments()

JSON_Value * json_parse_string_with_comments | ( | const char * | string | ) |

Definition at line 1609 of file parson.c.

References NULL.

Referenced by json_parse_file_with_comments().

## json_serialization_size()

size_t json_serialization_size | ( | const JSON_Value * | value | ) |

Definition at line 2080 of file parson.c.

References NULL, PARSON_FALSE, and PARSON_NUM_BUF_SIZE.

Referenced by json_serialize_to_buffer(), and json_serialize_to_string().

## json_serialization_size_pretty()

size_t json_serialization_size_pretty | ( | const JSON_Value * | value | ) |

Definition at line 2148 of file parson.c.

References NULL, PARSON_NUM_BUF_SIZE, and PARSON_TRUE.

Referenced by json_serialize_to_buffer_pretty(), and json_serialize_to_string_pretty().

## json_serialize_to_buffer()

JSON_Status json_serialize_to_buffer | ( | const JSON_Value * | value,
|  | char * | buf,
|  | size_t | buf_size_in_bytes )

Definition at line 2089 of file parson.c.

References json_serialization_size(), JSONFailure, JSONSuccess, NULL, and PARSON_FALSE.

Referenced by json_serialize_to_string().

## json_serialize_to_buffer_pretty()

JSON_Status json_serialize_to_buffer_pretty | ( | const JSON_Value * | value,
|  | char * | buf,
|  | size_t | buf_size_in_bytes )

Definition at line 2157 of file parson.c.

References json_serialization_size_pretty(), JSONFailure, JSONSuccess, NULL, and PARSON_TRUE.

Referenced by json_serialize_to_string_pretty().

## json_serialize_to_file()

JSON_Status json_serialize_to_file | ( | const JSON_Value * | value,
|  | const char * | filename )

Definition at line 2104 of file parson.c.

References json_free_serialized_string(), json_serialize_to_string(), JSONFailure, JSONSuccess, and NULL.

## json_serialize_to_file_pretty()

JSON_Status json_serialize_to_file_pretty | ( | const JSON_Value * | value,
|  | const char * | filename )

Definition at line 2172 of file parson.c.

References json_free_serialized_string(), json_serialize_to_string_pretty(), JSONFailure, JSONSuccess, and NULL.

## json_serialize_to_string()

char * json_serialize_to_string | ( | const JSON_Value * | value | ) |

Definition at line 2128 of file parson.c.

References json_free_serialized_string(), json_serialization_size(), json_serialize_to_buffer(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_serialize_to_string(), and json_serialize_to_file().

## json_serialize_to_string_pretty()

char * json_serialize_to_string_pretty | ( | const JSON_Value * | value | ) |

Definition at line 2196 of file parson.c.

References json_free_serialized_string(), json_serialization_size_pretty(), json_serialize_to_buffer_pretty(), JSONFailure, JSONSuccess, and NULL.

Referenced by G_json_serialize_to_string_pretty(), and json_serialize_to_file_pretty().

## json_set_allocation_functions()

void json_set_allocation_functions | ( | JSON_Malloc_Function | malloc_fun,
|  | JSON_Free_Function | free_fun )

Definition at line 2829 of file parson.c.

## json_set_escape_slashes()

void json_set_escape_slashes | ( | int | escape_slashes | ) |

Definition at line 2836 of file parson.c.

## json_set_float_serialization_format()

void json_set_float_serialization_format | ( | const char * | format | ) |

Definition at line 2841 of file parson.c.

References NULL.

Referenced by G_json_set_float_serialization_format().

## json_set_number_serialization_function()

void json_set_number_serialization_function | ( | JSON_Number_Serialization_Function | fun | ) |

Definition at line 2854 of file parson.c.

## json_string()

const char * json_string | ( | const JSON_Value * | value | ) |

Definition at line 2809 of file parson.c.

References json_value_get_string().

## json_string_len()

size_t json_string_len | ( | const JSON_Value * | value | ) |

Definition at line 2814 of file parson.c.

References json_value_get_string_len().

## json_type()

JSON_Value_Type json_type | ( | const JSON_Value * | value | ) |

Definition at line 2794 of file parson.c.

References json_value_get_type().

## json_validate()

JSON_Status json_validate | ( | const JSON_Value * | schema,
|  | const JSON_Value * | value )

Definition at line 2659 of file parson.c.

References count, json_array_get_count(), json_array_get_value(), json_object_get_count(), json_object_get_name(), json_object_get_value(), json_validate(), json_value_get_array(), json_value_get_object(), json_value_get_type(), JSONArray, JSONBoolean, JSONError, JSONFailure, JSONNull, JSONNumber, JSONObject, JSONString, JSONSuccess, and NULL.

Referenced by json_validate().

## json_value_deep_copy()

JSON_Value * json_value_deep_copy | ( | const JSON_Value * | value | ) |

Definition at line 1985 of file parson.c.

References json_array_get_count(), json_array_get_value(), json_object_get_count(), json_object_get_name(), json_object_get_value(), json_value_deep_copy(), json_value_free(), json_value_get_array(), json_value_get_boolean(), json_value_get_number(), json_value_get_object(), json_value_get_type(), json_value_init_array(), json_value_init_boolean(), json_value_init_null(), json_value_init_number(), json_value_init_object(), JSONArray, JSONBoolean, JSONError, JSONFailure, JSONNull, JSONNumber, JSONObject, JSONString, JSONSuccess, and NULL.

Referenced by json_value_deep_copy().

## json_value_equals()

int json_value_equals | ( | const JSON_Value * | a,
|  | const JSON_Value * | b )

Definition at line 2727 of file parson.c.

References b, json_array_get_count(), json_array_get_value(), json_object_get_count(), json_object_get_name(), json_object_get_value(), json_value_equals(), json_value_get_array(), json_value_get_boolean(), json_value_get_number(), json_value_get_object(), json_value_get_type(), JSONArray, JSONBoolean, JSONError, JSONNull, JSONNumber, JSONObject, JSONString, NULL, PARSON_FALSE, and PARSON_TRUE.

Referenced by json_value_equals().

## json_value_free()

void json_value_free | ( | JSON_Value * | value | ) |

Definition at line 1867 of file parson.c.

References json_value_get_type(), JSONArray, JSONObject, and JSONString.

Referenced by G_json_value_free(), json_array_append_boolean(), json_array_append_null(), json_array_append_number(), json_array_append_string(), json_array_append_string_with_len(), json_array_clear(), json_array_remove(), json_array_replace_boolean(), json_array_replace_null(), json_array_replace_number(), json_array_replace_string(), json_array_replace_string_with_len(), json_array_replace_value(), json_object_clear(), json_object_dotset_boolean(), json_object_dotset_null(), json_object_dotset_number(), json_object_dotset_string(), json_object_dotset_string_with_len(), json_object_dotset_value(), json_object_set_boolean(), json_object_set_null(), json_object_set_number(), json_object_set_string(), json_object_set_string_with_len(), json_object_set_value(), and json_value_deep_copy().

## json_value_get_array()

JSON_Array * json_value_get_array | ( | const JSON_Value * | value | ) |

Definition at line 1828 of file parson.c.

References json_value_get_type(), JSONArray, and NULL.

Referenced by json_array(), json_array_get_array(), json_object_dotget_array(), json_object_get_array(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_value_get_boolean()

int json_value_get_boolean | ( | const JSON_Value * | value | ) |

Definition at line 1856 of file parson.c.

References json_value_get_type(), and JSONBoolean.

Referenced by json_array_get_boolean(), json_boolean(), json_object_dotget_boolean(), json_object_get_boolean(), json_value_deep_copy(), and json_value_equals().

## json_value_get_number()

double json_value_get_number | ( | const JSON_Value * | value | ) |

Definition at line 1851 of file parson.c.

References json_value_get_type(), and JSONNumber.

Referenced by json_array_get_number(), json_number(), json_object_dotget_number(), json_object_get_number(), json_value_deep_copy(), and json_value_equals().

## json_value_get_object()

JSON_Object * json_value_get_object | ( | const JSON_Value * | value | ) |

Definition at line 1822 of file parson.c.

References json_value_get_type(), JSONObject, and NULL.

Referenced by G_json_value_get_object(), json_array_get_object(), json_object(), json_object_dotget_object(), json_object_dotget_value(), json_object_dotset_value(), json_object_get_object(), json_validate(), json_value_deep_copy(), and json_value_equals().

## json_value_get_parent()

JSON_Value * json_value_get_parent | ( | const JSON_Value * | value | ) |

Definition at line 1862 of file parson.c.

References NULL.

## json_value_get_string()

const char * json_value_get_string | ( | const JSON_Value * | value | ) |

Definition at line 1839 of file parson.c.

References NULL.

Referenced by json_array_get_string(), json_object_dotget_string(), json_object_get_string(), and json_string().

## json_value_get_string_len()

size_t json_value_get_string_len | ( | const JSON_Value * | value | ) |

Definition at line 1845 of file parson.c.

Referenced by json_array_get_string_len(), json_object_dotget_string_len(), json_object_get_string_len(), and json_string_len().

## json_value_get_type()

JSON_Value_Type json_value_get_type | ( | const JSON_Value * | value | ) |

Definition at line 1817 of file parson.c.

References JSONError.

Referenced by G_json_value_get_type(), json_object_dothas_value_of_type(), json_object_dotset_value(), json_object_has_value_of_type(), json_type(), json_validate(), json_value_deep_copy(), json_value_equals(), json_value_free(), json_value_get_array(), json_value_get_boolean(), json_value_get_number(), and json_value_get_object().

## json_value_init_array()

JSON_Value * json_value_init_array | ( | void |  | ) |

Definition at line 1901 of file parson.c.

References JSONArray, and NULL.

Referenced by G_json_value_init_array(), and json_value_deep_copy().

## json_value_init_boolean()

JSON_Value * json_value_init_boolean | ( | int | boolean | ) |

Definition at line 1962 of file parson.c.

References JSONBoolean, and NULL.

Referenced by json_array_append_boolean(), json_array_replace_boolean(), json_object_dotset_boolean(), json_object_set_boolean(), and json_value_deep_copy().

## json_value_init_null()

JSON_Value * json_value_init_null | ( | void |  | ) |

Definition at line 1974 of file parson.c.

References JSONNull, and NULL.

Referenced by json_array_append_null(), json_array_replace_null(), json_object_dotset_null(), json_object_set_null(), and json_value_deep_copy().

## json_value_init_number()

JSON_Value * json_value_init_number | ( | double | number | ) |

Definition at line 1946 of file parson.c.

References IS_NUMBER_INVALID, JSONNumber, and NULL.

Referenced by json_array_append_number(), json_array_replace_number(), json_object_dotset_number(), json_object_set_number(), and json_value_deep_copy().

## json_value_init_object()

JSON_Value * json_value_init_object | ( | void |  | ) |

Definition at line 1885 of file parson.c.

References JSONObject, and NULL.

Referenced by G_json_value_init_object(), json_object_dotset_value(), and json_value_deep_copy().

## json_value_init_string()

JSON_Value * json_value_init_string | ( | const char * | string | ) |

Definition at line 1917 of file parson.c.

References json_value_init_string_with_len(), and NULL.

Referenced by json_array_append_string(), json_array_replace_string(), json_object_dotset_string(), and json_object_set_string().

## json_value_init_string_with_len()

JSON_Value * json_value_init_string_with_len | ( | const char * | string,
|  | size_t | length )

Definition at line 1925 of file parson.c.

References NULL.

Referenced by json_array_append_string_with_len(), json_array_replace_string_with_len(), json_object_dotset_string_with_len(), json_object_set_string_with_len(), and json_value_init_string().