Declarations
Public Only
variant JsonValue {
var Null : JsonValue
var Bool : JsonValue
var Number : JsonValue
var String : JsonValue
var Object : JsonValue
var Array : JsonValue
}
func delete(self : *JsonValue) : void
interface JsonStringEmitter
func append_char(self : &JsonStringEmitter, ch : char) : void
func append_char(self : &JsonStringBuilder, ch : char) : void
func escape_string_into<T>(emitter : &T, str : &string) : void
func append_value<T>(emitter : &T, value : &JsonValue) : void
func append_value_pretty<T>(emitter : &T, value : &JsonValue, indent : int) : void
func make() : DebugJsonSaxHandler
func writeLine(self : &DebugJsonSaxHandler) : void
func on_null(self : &DebugJsonSaxHandler) : void
func on_bool(self : &DebugJsonSaxHandler, value : bool) : void
func on_number(self : &DebugJsonSaxHandler, data : *char, len : size_t) : void
func on_string(self : &DebugJsonSaxHandler, data : *char, len : size_t) : void
func on_object_begin(self : &DebugJsonSaxHandler) : void
func on_object_end(self : &DebugJsonSaxHandler) : void
func on_array_begin(self : &DebugJsonSaxHandler) : void
func on_array_end(self : &DebugJsonSaxHandler) : void
func on_key(self : &DebugJsonSaxHandler, data : *char, len : size_t) : void
struct ASTJsonHandler : JsonSaxHandler {
var stack : vector<JsonValue>
var key_stack : vector<string>
var root : JsonValue
var have_root : bool
}
helper: move value `v` into either current container or become the root
func on_null(self : &ASTJsonHandler) : void
func on_bool(self : &ASTJsonHandler, v : bool) : void
func on_number(self : &ASTJsonHandler, s : *char, len : size_t) : void
func on_string(self : &ASTJsonHandler, s : *char, len : size_t) : void
func on_object_begin(self : &ASTJsonHandler) : void
func on_object_end(self : &ASTJsonHandler) : void
func on_array_begin(self : &ASTJsonHandler) : void
func on_array_end(self : &ASTJsonHandler) : void
func on_key(self : &ASTJsonHandler, s : *char, len : size_t) : void
func delete(self : *ASTJsonHandler) : void