CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
jsoncommon.h
Go to the documentation of this file.
1
26
27#pragma once
28
30
36
46
78
80
86typedef struct JSONParseContext {
91 // Internal parser phase (do not access directly)
92 int phase;
93
95 union {
97 string curKey;
99 int32 curIdx;
102
123
JSON_PARSE_EVENT
JSON parse event types.
Definition jsoncommon.h:48
JSON_PARSE_CONTEXT
JSON parser context types.
Definition jsoncommon.h:38
enum JSON_PARSE_EVENT JsonEventType
JSON parse event types.
enum JSON_PARSE_CONTEXT JsonContextType
JSON parser context types.
@ JSON_String
String value parsed.
Definition jsoncommon.h:62
@ JSON_Null
Null value parsed.
Definition jsoncommon.h:72
@ JSON_Object_Begin
New object starts at current context.
Definition jsoncommon.h:52
@ JSON_Int
Number parsed that fits in int64.
Definition jsoncommon.h:64
@ JSON_Float
Number parsed that requires float64.
Definition jsoncommon.h:66
@ JSON_Array_End
End of current array.
Definition jsoncommon.h:60
@ JSON_End
Parsing finished; cleanup user context if needed.
Definition jsoncommon.h:76
@ JSON_True
Boolean true value parsed.
Definition jsoncommon.h:68
@ JSON_Array_Begin
New array starts at current context.
Definition jsoncommon.h:58
@ JSON_False
Boolean false value parsed.
Definition jsoncommon.h:70
@ JSON_Object_End
End of current object.
Definition jsoncommon.h:56
@ JSON_Parse_Unknown
Never sent; indicates a parse error.
Definition jsoncommon.h:50
@ JSON_Object_Key
Valid JSON string parsed in object key context.
Definition jsoncommon.h:54
@ JSON_Error
Parse error occurred; strData contains error message (JSON_End follows)
Definition jsoncommon.h:74
@ JSON_Array
Currently parsing an array.
Definition jsoncommon.h:44
@ JSON_Object
Currently parsing an object.
Definition jsoncommon.h:42
@ JSON_Top
Top-level context (bare value)
Definition jsoncommon.h:40
Core stream buffer implementation for efficient data streaming.
union JSONParseContext::@25 cdata
Context-specific data.
string curKey
Current key being parsed (for objects)
Definition jsoncommon.h:97
int32 curIdx
Current array index (for arrays)
Definition jsoncommon.h:99
JsonContextType ctype
Type of current context.
Definition jsoncommon.h:90
JSONParseContext * parent
Parent context in the stack.
Definition jsoncommon.h:88
int64 intData
Integer value (for JSON_Int)
Definition jsoncommon.h:116
JSONParseContext * ctx
Current parser context.
Definition jsoncommon.h:109
JsonEventType etype
Type of event.
Definition jsoncommon.h:112
union JSONParseEvent::@26 edata
Event-specific data.
string strData
String value (for JSON_String, JSON_Object_Key, JSON_Error)
Definition jsoncommon.h:120
double floatData
Float value (for JSON_Float)
Definition jsoncommon.h:118