Library: JSON
Package: JSON
Header: Poco/JSON/Handler.h
Description
Interface for handling parsing events generated by the JSON Parser.
An application can implement a subclass of Handler to implement callback-based parsing of a JSON document, similar to how a SAX parser would handle XML.
Inheritance
Known Derived Classes: ParseHandler, PrintHandler
Member Summary
Member Functions: asStruct, asVar, endArray, endObject, key, null, reset, startArray, startObject, value
Types Aliases
Ptr
using Ptr = SharedPtr < Handler >;
Constructors
Handler
Handler();
Creates an empty Handler.
Destructor
~Handler
virtual ~Handler();
Destroys the Handler.
Member Functions
asStruct
virtual Poco::DynamicStruct asStruct() const;
Returns the result of the parser (an object, array or string), empty Var if there is no result.
asVar
virtual Poco::Dynamic::Var asVar() const;
Returns the result of the parser (an object, array or string), empty Var if there is no result.
endArray
virtual void endArray() = 0;
The parser has read a ], meaning the array is read.
endObject
virtual void endObject() = 0;
The parser has read a }, meaning the object is read.
key
virtual void key(
const std::string & k
) = 0;
A key of an object is read.
null
virtual void null() = 0;
A null value is read.
reset
virtual void reset() = 0;
Resets the handler state.
startArray
virtual void startArray() = 0;
The parser has read a [, meaning a new array will be read.
startObject
virtual void startObject() = 0;
The parser has read a {, meaning a new object will be read.
value
virtual void value(
int v
) = 0;
An integer value is read.
value
virtual void value(
unsigned v
) = 0;
An unsigned value is read. This will only be triggered if the value cannot fit into a signed int.
value
virtual void value(
Int64 v
) = 0;
A 64-bit integer value is read.
value
virtual void value(
UInt64 v
) = 0;
An unsigned 64-bit integer value is read. This will only be triggered if the value cannot fit into a signed 64-bit integer.
value
virtual void value(
const std::string & value
) = 0;
A string value is read.
value
virtual void value(
double d
) = 0;
A double value is read.
value
virtual void value(
bool b
) = 0;
A boolean value is read.