libsheepy
Macros | Functions
laxjson.c File Reference
#include "laxjson.h"
#include <stdlib.h>
#include <assert.h>
#include "../../release/libsheepy.h"
Include dependency graph for laxjson.c:

Go to the source code of this file.

Macros

#define WHITESPACE
 
#define DIGIT
 
#define ALPHANUMERIC
 
#define VALID_UNQUOTED
 
#define NUMBER_TERMINATOR
 
#define PUSH_STATE(state)
 
#define BUFFER_CHAR(c)
 

Functions

struct LaxJsonContextlax_json_create (void)
 
void lax_json_destroy (struct LaxJsonContext *context)
 
enum LaxJsonError lax_json_feed (struct LaxJsonContext *context, int size, const char *data)
 
enum LaxJsonError lax_json_eof (struct LaxJsonContext *context)
 
const char * lax_json_str_err (enum LaxJsonError err)
 

Macro Definition Documentation

◆ WHITESPACE

#define WHITESPACE
Value:
' ': \
case '\t': \
case '\n': \
case '\f': \
case '\r': \
case 0xb

Definition at line 15 of file laxjson.c.

◆ DIGIT

#define DIGIT
Value:
'0': \
case '1': \
case '2': \
case '3': \
case '4': \
case '5': \
case '6': \
case '7': \
case '8': \
case '9'

Definition at line 23 of file laxjson.c.

◆ ALPHANUMERIC

#define ALPHANUMERIC

Definition at line 35 of file laxjson.c.

◆ VALID_UNQUOTED

#define VALID_UNQUOTED
Value:
'-': \
case '_': \
case '#': \
case '$': \
case '%': \
case '&': \
case '<': \
case '>': \
case '=': \
case '~': \
case '|': \
case '@': \
case '?': \
case ';': \
case '.': \
case '+': \
case '*': \
case '(': \
case ')': \
#define ALPHANUMERIC
Definition: laxjson.c:35

Definition at line 90 of file laxjson.c.

◆ NUMBER_TERMINATOR

#define NUMBER_TERMINATOR
Value:
',': \
case WHITESPACE: \
case ']': \
case '}': \
case '/'
#define WHITESPACE
Definition: laxjson.c:15

Definition at line 112 of file laxjson.c.

◆ PUSH_STATE

#define PUSH_STATE (   state)
Value:
err = push_state(context, state); \
if (err) return err;
#define err(str)
Definition: tpool.c:35

◆ BUFFER_CHAR

#define BUFFER_CHAR (   c)
Value:
err = buffer_char(context, c); \
if (err) return err;
#define err(str)
Definition: tpool.c:35
char c

Function Documentation

◆ lax_json_create()

struct LaxJsonContext* lax_json_create ( void  )

Definition at line 161 of file laxjson.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lax_json_destroy()

void lax_json_destroy ( struct LaxJsonContext context)

Definition at line 191 of file laxjson.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lax_json_feed()

enum LaxJsonError lax_json_feed ( struct LaxJsonContext context,
int  size,
const char *  data 
)

Definition at line 219 of file laxjson.c.

Here is the caller graph for this function:

◆ lax_json_eof()

enum LaxJsonError lax_json_eof ( struct LaxJsonContext context)

Definition at line 737 of file laxjson.c.

◆ lax_json_str_err()

const char* lax_json_str_err ( enum LaxJsonError  err)

Definition at line 751 of file laxjson.c.

Here is the caller graph for this function: