w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

json-builder.h File Reference
#include "json.h"
Include dependency graph for json-builder.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  json_serialize_opts
 

Macros

#define json_serialize_mode_multiline   0
 
#define json_serialize_mode_single_line   1
 
#define json_serialize_mode_packed   2
 
#define json_serialize_opt_CRLF   (1 << 1)
 
#define json_serialize_opt_pack_brackets   (1 << 2)
 
#define json_serialize_opt_no_space_after_comma   (1 << 3)
 
#define json_serialize_opt_no_space_after_colon   (1 << 4)
 
#define json_serialize_opt_use_tabs   (1 << 5)
 

Typedefs

typedef struct json_serialize_opts json_serialize_opts
 

Functions

json_valuejson_array_new (size_t length)
 
json_valuejson_array_push (json_value *array, json_value *)
 
json_valuejson_object_new (size_t length)
 
json_valuejson_object_push (json_value *object, const char *name, json_value *)
 
json_valuejson_object_push_length (json_value *object, unsigned int name_length, const char *name, json_value *)
 
json_valuejson_object_push_nocopy (json_value *object, unsigned int name_length, char *name, json_value *)
 
json_valuejson_object_merge (json_value *objectA, json_value *objectB)
 
void json_object_sort (json_value *object, json_value *proto)
 
json_valuejson_string_new (const char *)
 
json_valuejson_string_new_length (unsigned int length, const char *)
 
json_valuejson_string_new_nocopy (unsigned int length, char *)
 
json_valuejson_integer_new (int64_t)
 
json_valuejson_double_new (double)
 
json_valuejson_boolean_new (int)
 
json_valuejson_null_new (void)
 
size_t json_measure (json_value *)
 
size_t json_measure_ex (json_value *, json_serialize_opts)
 
void json_serialize (char *buf, json_value *)
 
void json_serialize_ex (char *buf, json_value *, json_serialize_opts)
 
void json_builder_free (json_value *)
 

Variables

const size_t json_builder_extra
 

Macro Definition Documentation

◆ json_serialize_mode_multiline

#define json_serialize_mode_multiline   0

Definition at line 102 of file json-builder.h.

◆ json_serialize_mode_packed

#define json_serialize_mode_packed   2

Definition at line 104 of file json-builder.h.

◆ json_serialize_mode_single_line

#define json_serialize_mode_single_line   1

Definition at line 103 of file json-builder.h.

◆ json_serialize_opt_CRLF

#define json_serialize_opt_CRLF   (1 << 1)

Definition at line 106 of file json-builder.h.

◆ json_serialize_opt_no_space_after_colon

#define json_serialize_opt_no_space_after_colon   (1 << 4)

Definition at line 109 of file json-builder.h.

◆ json_serialize_opt_no_space_after_comma

#define json_serialize_opt_no_space_after_comma   (1 << 3)

Definition at line 108 of file json-builder.h.

◆ json_serialize_opt_pack_brackets

#define json_serialize_opt_pack_brackets   (1 << 2)

Definition at line 107 of file json-builder.h.

◆ json_serialize_opt_use_tabs

#define json_serialize_opt_use_tabs   (1 << 5)

Definition at line 110 of file json-builder.h.

Typedef Documentation

◆ json_serialize_opts

Function Documentation

◆ json_array_new()

◆ json_array_push()

◆ json_boolean_new()

◆ json_builder_free()

void json_builder_free ( json_value )

Referenced by main(), otfcc_dump(), and preserialize().

◆ json_double_new()

◆ json_integer_new()

◆ json_measure()

size_t json_measure ( json_value )

◆ json_measure_ex()

size_t json_measure_ex ( json_value ,
json_serialize_opts   
)

Referenced by main(), otfcc_dump(), and preserialize().

◆ json_null_new()

json_value* json_null_new ( void  )

◆ json_object_merge()

json_value* json_object_merge ( json_value objectA,
json_value objectB 
)

◆ json_object_new()

◆ json_object_push()

◆ json_object_push_length()

json_value* json_object_push_length ( json_value object,
unsigned int  name_length,
const char *  name,
json_value  
)

◆ json_object_push_nocopy()

json_value* json_object_push_nocopy ( json_value object,
unsigned int  name_length,
char *  name,
json_value  
)

◆ json_object_sort()

void json_object_sort ( json_value object,
json_value proto 
)

◆ json_serialize()

void json_serialize ( char *  buf,
json_value  
)

◆ json_serialize_ex()

void json_serialize_ex ( char *  buf,
json_value ,
json_serialize_opts   
)

Referenced by main(), otfcc_dump(), and preserialize().

◆ json_string_new()

◆ json_string_new_length()

◆ json_string_new_nocopy()

json_value* json_string_new_nocopy ( unsigned int  length,
char *   
)

Referenced by preserialize().

Variable Documentation

◆ json_builder_extra

const size_t json_builder_extra
extern