RetroArch
Classes | Macros | Typedefs | Enumerations | Functions | Variables
jsonsax_full.h File Reference
#include <stddef.h>
Include dependency graph for jsonsax_full.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tag_JSON_Location
 
struct  tag_JSON_MemorySuite
 
struct  tag_JSON_Version
 

Macros

#define JSON_MAJOR_VERSION   1
 
#define JSON_MINOR_VERSION   4
 
#define JSON_MICRO_VERSION   5
 
#define JSON_EXPORT   /* nothing */
 
#define JSON_CALL   /* nothing */
 
#define JSON_API(t)   JSON_EXPORT t JSON_CALL
 

Typedefs

typedef enum tag_JSON_Boolean JSON_Boolean
 
typedef enum tag_JSON_Status JSON_Status
 
typedef enum tag_JSON_Error JSON_Error
 
typedef enum tag_JSON_Encoding JSON_Encoding
 
typedef enum tag_JSON_StringAttribute JSON_StringAttribute
 
typedef unsigned int JSON_StringAttributes
 
typedef enum tag_JSON_NumberAttribute JSON_NumberAttribute
 
typedef unsigned int JSON_NumberAttributes
 
typedef enum tag_JSON_SpecialNumber JSON_SpecialNumber
 
typedef struct tag_JSON_Location JSON_Location
 
typedef void *(JSON_CALLJSON_ReallocHandler) (void *userData, void *ptr, size_t size)
 
typedef void(JSON_CALLJSON_FreeHandler) (void *userData, void *ptr)
 
typedef struct tag_JSON_MemorySuite JSON_MemorySuite
 
typedef struct JSON_Parser_DataJSON_Parser
 
typedef enum tag_JSON_Parser_HandlerResult JSON_Parser_HandlerResult
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_EncodingDetectedHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_NullHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_BooleanHandler) (JSON_Parser parser, JSON_Boolean value)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_StringHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_StringAttributes attributes)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_NumberHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_NumberAttributes attributes)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_SpecialNumberHandler) (JSON_Parser parser, JSON_SpecialNumber value)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_StartObjectHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_EndObjectHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_ObjectMemberHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_StringAttributes attributes)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_StartArrayHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_EndArrayHandler) (JSON_Parser parser)
 
typedef JSON_Parser_HandlerResult(JSON_CALLJSON_Parser_ArrayItemHandler) (JSON_Parser parser)
 
typedef struct JSON_Writer_DataJSON_Writer
 
typedef enum tag_JSON_Writer_HandlerResult JSON_Writer_HandlerResult
 
typedef JSON_Writer_HandlerResult(JSON_CALLJSON_Writer_OutputHandler) (JSON_Writer writer, const char *pBytes, size_t length)
 
typedef struct tag_JSON_Version JSON_Version
 

Enumerations

enum  tag_JSON_Boolean { JSON_False = 0, JSON_True = 1 }
 
enum  tag_JSON_Status { JSON_Failure = 0, JSON_Success = 1 }
 
enum  tag_JSON_Error {
  JSON_Error_None = 0, JSON_Error_OutOfMemory = 1, JSON_Error_AbortedByHandler = 2, JSON_Error_BOMNotAllowed = 3,
  JSON_Error_InvalidEncodingSequence = 4, JSON_Error_UnknownToken = 5, JSON_Error_UnexpectedToken = 6, JSON_Error_IncompleteToken = 7,
  JSON_Error_ExpectedMoreTokens = 8, JSON_Error_UnescapedControlCharacter = 9, JSON_Error_InvalidEscapeSequence = 10, JSON_Error_UnpairedSurrogateEscapeSequence = 11,
  JSON_Error_TooLongString = 12, JSON_Error_InvalidNumber = 13, JSON_Error_TooLongNumber = 14, JSON_Error_DuplicateObjectMember = 15,
  JSON_Error_StoppedAfterEmbeddedDocument = 16
}
 
enum  tag_JSON_Encoding {
  JSON_UnknownEncoding = 0, JSON_UTF8 = 1, JSON_UTF16LE = 2, JSON_UTF16BE = 3,
  JSON_UTF32LE = 4, JSON_UTF32BE = 5
}
 
enum  tag_JSON_StringAttribute {
  JSON_SimpleString = 0, JSON_ContainsNullCharacter = 1 << 0, JSON_ContainsControlCharacter = 1 << 1, JSON_ContainsNonASCIICharacter = 1 << 2,
  JSON_ContainsNonBMPCharacter = 1 << 3, JSON_ContainsReplacedCharacter = 1 << 4
}
 
enum  tag_JSON_NumberAttribute {
  JSON_SimpleNumber = 0, JSON_IsNegative = 1 << 0, JSON_IsHex = 1 << 1, JSON_ContainsDecimalPoint = 1 << 2,
  JSON_ContainsExponent = 1 << 3, JSON_ContainsNegativeExponent = 1 << 4
}
 
enum  tag_JSON_SpecialNumber { JSON_NaN = 0, JSON_Infinity = 1, JSON_NegativeInfinity = 2 }
 
enum  tag_JSON_Parser_HandlerResult { JSON_Parser_Continue = 0, JSON_Parser_Abort = 1, JSON_Parser_TreatAsDuplicateObjectMember = 2 }
 
enum  tag_JSON_Writer_HandlerResult { JSON_Writer_Continue = 0, JSON_Writer_Abort = 1 }
 

Functions

 JSON_API (JSON_Parser) JSON_Parser_Create(const JSON_MemorySuite *pMemorySuite)
 
 JSON_API (JSON_Status) JSON_Parser_Free(JSON_Parser parser)
 
 JSON_API (void *) JSON_Parser_GetUserData(JSON_Parser parser)
 
 JSON_API (JSON_Encoding) JSON_Parser_GetInputEncoding(JSON_Parser parser)
 
 JSON_API (size_t) JSON_Parser_GetMaxStringLength(JSON_Parser parser)
 
 JSON_API (JSON_Boolean) JSON_Parser_GetAllowBOM(JSON_Parser parser)
 
 JSON_API (JSON_Error) JSON_Parser_GetError(JSON_Parser parser)
 
 JSON_API (JSON_Parser_EncodingDetectedHandler) JSON_Parser_GetEncodingDetectedHandler(JSON_Parser parser)
 
 JSON_API (JSON_Parser_BooleanHandler) JSON_Parser_GetBooleanHandler(JSON_Parser parser)
 
 JSON_API (JSON_Parser_StringHandler) JSON_Parser_GetStringHandler(JSON_Parser parser)
 
 JSON_API (JSON_Parser_NumberHandler) JSON_Parser_GetNumberHandler(JSON_Parser parser)
 
 JSON_API (JSON_Parser_SpecialNumberHandler) JSON_Parser_GetSpecialNumberHandler(JSON_Parser parser)
 
 JSON_API (JSON_Writer) JSON_Writer_Create(const JSON_MemorySuite *pMemorySuite)
 
 JSON_API (JSON_Writer_OutputHandler) JSON_Writer_GetOutputHandler(JSON_Writer writer)
 
 JSON_API (const JSON_Version *) JSON_LibraryVersion(void)
 
 JSON_API (const char *) JSON_ErrorString(JSON_Error error)
 

Variables

voiduserData
 
JSON_Encoding encoding
 
size_t maxLength
 
JSON_Boolean allowBOM
 
JSON_Boolean allowComments
 
JSON_Boolean allowSpecialNumbers
 
JSON_Boolean allowHexNumbers
 
JSON_Boolean allowUnescapedControlCharacters
 
JSON_Boolean replaceInvalidEncodingSequences
 
JSON_Boolean trackObjectMembers
 
JSON_Boolean stopAfterEmbeddedDocument
 
JSON_LocationpLocation
 
JSON_Parser_EncodingDetectedHandler handler
 
const char * pBytes
 
const char size_t length
 
const char size_t JSON_Boolean isFinal
 
JSON_Boolean useCRLF
 
JSON_Boolean escapeAllNonASCIICharacters
 
JSON_Boolean value
 
const char * pValue
 
size_t numberOfSpaces
 

Macro Definition Documentation

◆ JSON_API

#define JSON_API (   t)    JSON_EXPORT t JSON_CALL

◆ JSON_CALL

#define JSON_CALL   /* nothing */

◆ JSON_EXPORT

#define JSON_EXPORT   /* nothing */

◆ JSON_MAJOR_VERSION

#define JSON_MAJOR_VERSION   1

◆ JSON_MICRO_VERSION

#define JSON_MICRO_VERSION   5

◆ JSON_MINOR_VERSION

#define JSON_MINOR_VERSION   4

Typedef Documentation

◆ JSON_Boolean

◆ JSON_Encoding

◆ JSON_Error

typedef enum tag_JSON_Error JSON_Error

◆ JSON_FreeHandler

typedef void(JSON_CALL * JSON_FreeHandler) (void *userData, void *ptr)

◆ JSON_Location

◆ JSON_MemorySuite

◆ JSON_NumberAttribute

◆ JSON_NumberAttributes

typedef unsigned int JSON_NumberAttributes

◆ JSON_Parser

typedef struct JSON_Parser_Data* JSON_Parser

◆ JSON_Parser_ArrayItemHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_ArrayItemHandler) (JSON_Parser parser)

◆ JSON_Parser_BooleanHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_BooleanHandler) (JSON_Parser parser, JSON_Boolean value)

◆ JSON_Parser_EncodingDetectedHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_EncodingDetectedHandler) (JSON_Parser parser)

◆ JSON_Parser_EndArrayHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_EndArrayHandler) (JSON_Parser parser)

◆ JSON_Parser_EndObjectHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_EndObjectHandler) (JSON_Parser parser)

◆ JSON_Parser_HandlerResult

◆ JSON_Parser_NullHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_NullHandler) (JSON_Parser parser)

◆ JSON_Parser_NumberHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_NumberHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_NumberAttributes attributes)

◆ JSON_Parser_ObjectMemberHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_ObjectMemberHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_StringAttributes attributes)

◆ JSON_Parser_SpecialNumberHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_SpecialNumberHandler) (JSON_Parser parser, JSON_SpecialNumber value)

◆ JSON_Parser_StartArrayHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_StartArrayHandler) (JSON_Parser parser)

◆ JSON_Parser_StartObjectHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_StartObjectHandler) (JSON_Parser parser)

◆ JSON_Parser_StringHandler

typedef JSON_Parser_HandlerResult(JSON_CALL * JSON_Parser_StringHandler) (JSON_Parser parser, char *pValue, size_t length, JSON_StringAttributes attributes)

◆ JSON_ReallocHandler

typedef void*(JSON_CALL * JSON_ReallocHandler) (void *userData, void *ptr, size_t size)

◆ JSON_SpecialNumber

◆ JSON_Status

◆ JSON_StringAttribute

◆ JSON_StringAttributes

typedef unsigned int JSON_StringAttributes

◆ JSON_Version

◆ JSON_Writer

typedef struct JSON_Writer_Data* JSON_Writer

◆ JSON_Writer_HandlerResult

◆ JSON_Writer_OutputHandler

typedef JSON_Writer_HandlerResult(JSON_CALL * JSON_Writer_OutputHandler) (JSON_Writer writer, const char *pBytes, size_t length)

Enumeration Type Documentation

◆ tag_JSON_Boolean

Enumerator
JSON_False 
JSON_True 

◆ tag_JSON_Encoding

Enumerator
JSON_UnknownEncoding 
JSON_UTF8 
JSON_UTF16LE 
JSON_UTF16BE 
JSON_UTF32LE 
JSON_UTF32BE 

◆ tag_JSON_Error

Enumerator
JSON_Error_None 
JSON_Error_OutOfMemory 
JSON_Error_AbortedByHandler 
JSON_Error_BOMNotAllowed 
JSON_Error_InvalidEncodingSequence 
JSON_Error_UnknownToken 
JSON_Error_UnexpectedToken 
JSON_Error_IncompleteToken 
JSON_Error_ExpectedMoreTokens 
JSON_Error_UnescapedControlCharacter 
JSON_Error_InvalidEscapeSequence 
JSON_Error_UnpairedSurrogateEscapeSequence 
JSON_Error_TooLongString 
JSON_Error_InvalidNumber 
JSON_Error_TooLongNumber 
JSON_Error_DuplicateObjectMember 
JSON_Error_StoppedAfterEmbeddedDocument 

◆ tag_JSON_NumberAttribute

Enumerator
JSON_SimpleNumber 
JSON_IsNegative 
JSON_IsHex 
JSON_ContainsDecimalPoint 
JSON_ContainsExponent 
JSON_ContainsNegativeExponent 

◆ tag_JSON_Parser_HandlerResult

Enumerator
JSON_Parser_Continue 
JSON_Parser_Abort 
JSON_Parser_TreatAsDuplicateObjectMember 

◆ tag_JSON_SpecialNumber

Enumerator
JSON_NaN 
JSON_Infinity 
JSON_NegativeInfinity 

◆ tag_JSON_Status

Enumerator
JSON_Failure 
JSON_Success 

◆ tag_JSON_StringAttribute

Enumerator
JSON_SimpleString 
JSON_ContainsNullCharacter 
JSON_ContainsControlCharacter 
JSON_ContainsNonASCIICharacter 
JSON_ContainsNonBMPCharacter 
JSON_ContainsReplacedCharacter 

◆ tag_JSON_Writer_HandlerResult

Enumerator
JSON_Writer_Continue 
JSON_Writer_Abort 

Function Documentation

◆ JSON_API() [1/16]

JSON_API ( JSON_Parser  ) const

◆ JSON_API() [2/16]

JSON_API ( JSON_Status  )

◆ JSON_API() [3/16]

JSON_API ( void )

◆ JSON_API() [4/16]

JSON_API ( JSON_Encoding  )

◆ JSON_API() [5/16]

JSON_API ( size_t  )

◆ JSON_API() [6/16]

JSON_API ( JSON_Boolean  )

◆ JSON_API() [7/16]

JSON_API ( JSON_Error  )

◆ JSON_API() [8/16]

◆ JSON_API() [9/16]

◆ JSON_API() [10/16]

JSON_API ( JSON_Parser_StringHandler  )

◆ JSON_API() [11/16]

JSON_API ( JSON_Parser_NumberHandler  )

◆ JSON_API() [12/16]

◆ JSON_API() [13/16]

JSON_API ( JSON_Writer  ) const

◆ JSON_API() [14/16]

JSON_API ( JSON_Writer_OutputHandler  )

◆ JSON_API() [15/16]

JSON_API ( const JSON_Version )

◆ JSON_API() [16/16]

JSON_API ( const char *  )

Variable Documentation

◆ allowBOM

JSON_Boolean allowBOM

◆ allowComments

JSON_Boolean allowComments

◆ allowHexNumbers

JSON_Boolean allowHexNumbers

◆ allowSpecialNumbers

JSON_Boolean allowSpecialNumbers

◆ allowUnescapedControlCharacters

JSON_Boolean allowUnescapedControlCharacters

◆ encoding

const char size_t JSON_Encoding encoding

◆ escapeAllNonASCIICharacters

JSON_Boolean escapeAllNonASCIICharacters

◆ handler

◆ isFinal

const char size_t JSON_Boolean isFinal

◆ length

const char size_t length

◆ maxLength

size_t maxLength

◆ numberOfSpaces

size_t numberOfSpaces

◆ pBytes

const char* pBytes

◆ pLocation

JSON_Location * pLocation

◆ pValue

const char * pValue

◆ replaceInvalidEncodingSequences

JSON_Boolean replaceInvalidEncodingSequences

◆ stopAfterEmbeddedDocument

JSON_Boolean stopAfterEmbeddedDocument

◆ trackObjectMembers

JSON_Boolean trackObjectMembers

◆ useCRLF

JSON_Boolean useCRLF

◆ userData

void * userData

◆ value