rsstats 0.0.1
Redis Enterprise Statistic collector
cJSON.c File Reference
#include <string.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <limits.h>
#include <ctype.h>
#include <float.h>
#include "cJSON.h"
Include dependency graph for cJSON.c:

Go to the source code of this file.

Classes

struct  error
 
struct  internal_hooks
 
struct  parse_buffer
 
struct  printbuffer
 

Macros

#define true   ((cJSON_bool)1)
 
#define false   ((cJSON_bool)0)
 
#define isinf(d)   (isnan((d - d)) && !isnan(d))
 
#define isnan(d)   (d != d)
 
#define NAN   0.0/0.0
 
#define internal_malloc   malloc
 
#define internal_free   free
 
#define internal_realloc   realloc
 
#define static_strlen(string_literal)   (sizeof(string_literal) - sizeof(""))
 
#define can_read(buffer, size)   ((buffer != NULL) && (((buffer)->offset + size) <= (buffer)->length))
 
#define can_access_at_index(buffer, index)   ((buffer != NULL) && (((buffer)->offset + index) < (buffer)->length))
 
#define cannot_access_at_index(buffer, index)   (!can_access_at_index(buffer, index))
 
#define buffer_at_offset(buffer)   ((buffer)->content + (buffer)->offset)
 
#define cjson_min(a, b)   (((a) < (b)) ? (a) : (b))
 

Typedefs

typedef struct internal_hooks internal_hooks
 

Functions

 CJSON_PUBLIC (const char *)
 
 CJSON_PUBLIC (char *)
 
 CJSON_PUBLIC (double)
 
 CJSON_PUBLIC (void)
 
 CJSON_PUBLIC (cJSON *)
 
 CJSON_PUBLIC (cJSON_bool)
 
cJSONcJSON_Duplicate_rec (const cJSON *item, size_t depth, cJSON_bool recurse)
 
 CJSON_PUBLIC (void *)
 

Macro Definition Documentation

◆ buffer_at_offset

#define buffer_at_offset (   buffer)    ((buffer)->content + (buffer)->offset)

Definition at line 272 of file cJSON.c.

◆ can_access_at_index

#define can_access_at_index (   buffer,
  index 
)    ((buffer != NULL) && (((buffer)->offset + index) < (buffer)->length))

Definition at line 269 of file cJSON.c.

◆ can_read

#define can_read (   buffer,
  size 
)    ((buffer != NULL) && (((buffer)->offset + size) <= (buffer)->length))

Definition at line 267 of file cJSON.c.

◆ cannot_access_at_index

#define cannot_access_at_index (   buffer,
  index 
)    (!can_access_at_index(buffer, index))

Definition at line 270 of file cJSON.c.

◆ cjson_min

#define cjson_min (   a,
  b 
)    (((a) < (b)) ? (a) : (b))

Definition at line 1031 of file cJSON.c.

◆ false

#define false   ((cJSON_bool)0)

Definition at line 70 of file cJSON.c.

◆ internal_free

#define internal_free   free

Definition at line 164 of file cJSON.c.

◆ internal_malloc

#define internal_malloc   malloc

Definition at line 163 of file cJSON.c.

◆ internal_realloc

#define internal_realloc   realloc

Definition at line 165 of file cJSON.c.

◆ isinf

#define isinf (   d)    (isnan((d - d)) && !isnan(d))

Definition at line 74 of file cJSON.c.

◆ isnan

#define isnan (   d)    (d != d)

Definition at line 77 of file cJSON.c.

◆ NAN

#define NAN   0.0/0.0

Definition at line 84 of file cJSON.c.

◆ static_strlen

#define static_strlen (   string_literal)    (sizeof(string_literal) - sizeof(""))

Definition at line 169 of file cJSON.c.

◆ true

#define true   ((cJSON_bool)1)

Definition at line 65 of file cJSON.c.

Typedef Documentation

◆ internal_hooks

Function Documentation

◆ cJSON_Duplicate_rec()

cJSON * cJSON_Duplicate_rec ( const cJSON item,
size_t  depth,
cJSON_bool  recurse 
)

Definition at line 2325 of file cJSON.c.

◆ CJSON_PUBLIC() [1/7]

CJSON_PUBLIC ( char *  )

Definition at line 98 of file cJSON.c.

◆ CJSON_PUBLIC() [2/7]

CJSON_PUBLIC ( cJSON )

Definition at line 942 of file cJSON.c.

◆ CJSON_PUBLIC() [3/7]

CJSON_PUBLIC ( cJSON_bool  )

Definition at line 1127 of file cJSON.c.

◆ CJSON_PUBLIC() [4/7]

CJSON_PUBLIC ( const char *  )

Definition at line 94 of file cJSON.c.

◆ CJSON_PUBLIC() [5/7]

CJSON_PUBLIC ( double  )

Definition at line 106 of file cJSON.c.

◆ CJSON_PUBLIC() [6/7]

CJSON_PUBLIC ( void *  )

Definition at line 2668 of file cJSON.c.

◆ CJSON_PUBLIC() [7/7]

CJSON_PUBLIC ( void  )

Definition at line 191 of file cJSON.c.