aws-crt-cpp
Classes | Namespaces | Macros | Typedefs | Functions | Variables
cJSON.cpp File Reference
#include <string.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <limits.h>
#include <ctype.h>
#include <aws/crt/external/cJSON.h>

Classes

struct  error
 
struct  Aws::internal_hooks
 
struct  Aws::parse_buffer
 
struct  Aws::printbuffer
 

Namespaces

 Aws
 

Macros

#define internal_malloc   malloc
 
#define internal_free   free
 
#define internal_realloc   realloc
 
#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 Aws::internal_hooks Aws::internal_hooks
 

Functions

 Aws::CJSON_PUBLIC (const char *) cJSON_Version(void)
 
 Aws::CJSON_PUBLIC (char *) cJSON_Print(const cJSON *item)
 
 Aws::CJSON_PUBLIC (void) cJSON_InitHooks(cJSON_Hooks *hooks)
 
 Aws::CJSON_PUBLIC (double) cJSON_SetNumberHelper(cJSON *object
 
 Aws::CJSON_PUBLIC (cJSON *) cJSON_Parse(const char *value
 
 Aws::if (value==NULL)
 
 Aws::if (item==NULL)
 
 Aws::if (!parse_value(item, buffer_skip_whitespace(skip_utf8_bom(&buffer))))
 
 Aws::if (return_parse_end)
 
 Aws::if (value !=NULL)
 
 Aws::if (prebuffer< 0)
 
 Aws::if (!p.buffer)
 
 Aws::if (!print_value(item, &p))
 
 Aws::return (char *) p.buffer
 
 Aws::CJSON_PUBLIC (int) cJSON_GetArraySize(const cJSON *array)
 
 Aws::if ((len< 0)||(buf==NULL))
 
return Aws::print_value (item, &p)
 
 Aws::if (add_item_to_object(object, name, null, &global_hooks, false))
 
 Aws::cJSON_Delete (null)
 
 Aws::if (add_item_to_object(object, name, true_item, &global_hooks, false))
 
 Aws::cJSON_Delete (true_item)
 
 Aws::if (add_item_to_object(object, name, false_item, &global_hooks, false))
 
 Aws::cJSON_Delete (false_item)
 
 Aws::if (add_item_to_object(object, name, bool_item, &global_hooks, false))
 
 Aws::cJSON_Delete (bool_item)
 
 Aws::if (add_item_to_object(object, name, number_item, &global_hooks, false))
 
 Aws::cJSON_Delete (number_item)
 
 Aws::if (add_item_to_object(object, name, string_item, &global_hooks, false))
 
 Aws::cJSON_Delete (string_item)
 
 Aws::if (add_item_to_object(object, name, raw_item, &global_hooks, false))
 
 Aws::cJSON_Delete (raw_item)
 
 Aws::if (add_item_to_object(object, name, object_item, &global_hooks, false))
 
 Aws::cJSON_Delete (object_item)
 
 Aws::if (add_item_to_object(object, name, array, &global_hooks, false))
 
 Aws::cJSON_Delete (array)
 
return Aws::cJSON_DetachItemViaPointer (object, to_detach)
 
 Aws::if (after_inserted==NULL)
 
 Aws::if (replacement->next !=NULL)
 
 Aws::if (replacement->prev !=NULL)
 
 Aws::if (parent->child==item)
 
 Aws::cJSON_Delete (item)
 
 Aws::if ((count< 0)||(numbers==NULL))
 
 Aws::for (i=0;a &&(i<(size_t) count);i++)
 
 Aws::if ((count< 0)||(strings==NULL))
 
 Aws::if (!item)
 
 Aws::if (item->valuestring)
 
 Aws::while (child !=NULL)
 
 Aws::cJSON_Compare (const cJSON *const a, const cJSON *const b, const cJSON_bool case_sensitive)
 
 Aws::CJSON_PUBLIC (void *) cJSON_malloc(size_t size)
 

Variables

global_error Aws::json = NULL
 
global_error Aws::position = 0
 
buffer Aws::content = (const unsigned char *) value
 
buffer Aws::offset = 0
 
buffer Aws::hooks = global_hooks
 
fail Aws::__pad0__
 
return Aws::NULL
 
Aws::buffer = (unsigned char *) global_hooks.allocate((size_t) prebuffer)
 
Aws::noalloc = false
 
Aws::format = fmt
 
char * Aws::buf
 
char const int Aws::len
 
item Aws::next = NULL
 
 Aws::after_inserted = get_array_item(array, (size_t) which)
 
newitem Aws::prev = after_inserted->prev
 
 Aws::else
 
return Aws::true
 
cJSON * Aws::n = NULL
 
cJSON * Aws::p = NULL
 
cJSON * Aws::a = NULL
 
cJSON * Aws::child = NULL
 
cJSON * Aws::newchild = NULL
 
newitem Aws::type = item->type & (~cJSON_IsReference)
 
newitem Aws::valueint = item->valueint
 
newitem Aws::valuedouble = item->valuedouble
 
fail Aws::__pad1__
 

Macro Definition Documentation

◆ buffer_at_offset

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

◆ can_access_at_index

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

◆ can_read

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

◆ cannot_access_at_index

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

◆ cjson_min

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

◆ internal_free

#define internal_free   free

◆ internal_malloc

#define internal_malloc   malloc

◆ internal_realloc

#define internal_realloc   realloc