libcmutils 0.6.5
Multi-platform C99 utility library
Loading...
Searching...
No Matches
JSON parsing and the document model.

Data Structures

struct  CMUTIL_Json
 JSON base object. More...
 
struct  CMUTIL_JsonValue
 JSON value object. More...
 
struct  CMUTIL_JsonObject
 JSON object. More...
 
struct  CMUTIL_JsonArray
 JSON array type. More...
 

Macros

#define CMUTIL_JsonDestroy(a)   CMCall((CMUTIL_Json*)(a), Destroy)
 Destroy the JSON object.
 

Enumerations

enum  CMJsonType { CMJsonTypeValue = 0 , CMJsonTypeObject , CMJsonTypeArray }
 JSON value types. More...
 
enum  CMJsonValueType {
  CMJsonValueLong = 0 , CMJsonValueDouble , CMJsonValueString , CMJsonValueBoolean ,
  CMJsonValueNull
}
 JSON value types. More...
 

Functions

CMUTIL_JsonValueCMUTIL_JsonValueCreate (void)
 Create a new JSON value object.
 
CMUTIL_JsonObjectCMUTIL_JsonObjectCreate (void)
 Create a new JSON object.
 
CMUTIL_JsonArrayCMUTIL_JsonArrayCreate (void)
 Create a new JSON array.
 
CMUTIL_JsonCMUTIL_JsonParse (CMUTIL_String *jsonstr)
 Parse a JSON string into a JSON object.
 
CMUTIL_JsonCMUTIL_XmlToJson (CMUTIL_XmlNode *node)
 Convert an XML node to a JSON object.
 

Detailed Description

Macro Definition Documentation

◆ CMUTIL_JsonDestroy

#define CMUTIL_JsonDestroy (   a)    CMCall((CMUTIL_Json*)(a), Destroy)

Destroy the JSON object.

This macro provides a convenient way to call the Destroy method of a CMUTIL_Json variant.

Parameters
aA pointer to the CMUTIL_Json variant to be destroyed.

Enumeration Type Documentation

◆ CMJsonType

enum CMJsonType

JSON value types.

Enumerator
CMJsonTypeValue 

JSON value type.

CMJsonTypeObject 

JSON object type.

CMJsonTypeArray 

JSON array type.

◆ CMJsonValueType

JSON value types.

Enumerator
CMJsonValueLong 

JSON long integer type.

CMJsonValueDouble 

JSON double type.

CMJsonValueString 

JSON string type.

CMJsonValueBoolean 

JSON boolean type.

CMJsonValueNull 

JSON null type.

Function Documentation

◆ CMUTIL_JsonValueCreate()

CMUTIL_JsonValue * CMUTIL_JsonValueCreate ( void  )

Create a new JSON value object.

Returns
A pointer to the newly created CMUTIL_JsonValue object,

◆ CMUTIL_JsonObjectCreate()

CMUTIL_JsonObject * CMUTIL_JsonObjectCreate ( void  )

Create a new JSON object.

This function creates a new JSON object and returns a pointer to it.

Returns
A pointer to the newly created JSON object, or NULL on failure.

◆ CMUTIL_JsonArrayCreate()

CMUTIL_JsonArray * CMUTIL_JsonArrayCreate ( void  )

Create a new JSON array.

Returns
A new JSON array, or NULL if memory allocation fails.

◆ CMUTIL_JsonParse()

CMUTIL_Json * CMUTIL_JsonParse ( CMUTIL_String jsonstr)

Parse a JSON string into a JSON object.

Parameters
jsonstrThe JSON string to parse.
Returns
A new JSON object, or NULL if parsing fails.

◆ CMUTIL_XmlToJson()

CMUTIL_Json * CMUTIL_XmlToJson ( CMUTIL_XmlNode node)

Convert an XML node to a JSON object.

Parameters
nodeThe XML node to convert.
Returns
A new JSON object, or NULL if conversion fails.