#include </home/gallen/repositories/libvariant/src/JSONParser.h>
Public Types | |
| enum | Status_t { S_START, S_BEGIN, S_OK, S_ERROR, S_END, S_DONE } |
Public Member Functions | |
| JSONParserImpl (shared_ptr< ParserInput > i) | |
| virtual int | Run () |
| Status_t | GetStatus () const |
| virtual bool | Done () const |
| virtual bool | Error () const |
| virtual bool | Ok () const |
| virtual std::string | ErrorStr () const |
| Return a string describing the last error suitable for presentation to a user. | |
| unsigned | GetLine () const |
| unsigned | GetColumn () const |
| unsigned | GetByteCount () const |
| virtual void | Reset () |
Public Member Functions inherited from libvariant::ParserImpl | |
| virtual void | PushAction (shared_ptr< ParserActions > action) |
| virtual shared_ptr< ParserActions > | PopAction () |
| ParserActions * | TopAction () |
Additional Inherited Members | |
Protected Attributes inherited from libvariant::ParserImpl | |
|
std::deque< shared_ptr < ParserActions > > | action_stack |
A class that encapsulates the JSON_parser with the Parser interface
|
virtual |
These three functiosn can be used to query the state later. Done means that a call to Process will immediately return 1 Error if Process threw an exception last Ok if everything looks good (Process never been called, or last return 0 or possibly -1)
Implements libvariant::ParserImpl.
| JSONParserImpl::Status_t libvariant::JSONParserImpl::GetStatus | ( | ) | const |
|
virtual |
Resets the parser to the state it was in when just constructed.
Implements libvariant::ParserImpl.
|
virtual |
Attempt to parse some actions. At least one ParserActions should be on the action stack.
Run is not guaranteed to be recursively callable from inside a ParserActions callback. Do not do that.
return 0 on success return 1 when done return -1 if needing more data is detected (not all parsers support this; can be treated as an error) throw on error
Implements libvariant::ParserImpl.
1.8.7