syntax analysis More...
#include <json.hpp>
Public Member Functions | |
parser (InputAdapterType &&adapter, const parser_callback_t< BasicJsonType > cb=nullptr, const bool allow_exceptions_=true, const bool skip_comments=false) | |
a parser reading from an input adapter | |
void | parse (const bool strict, BasicJsonType &result) |
public parser interface More... | |
bool | accept (const bool strict=true) |
public accept interface More... | |
Private Member Functions | |
token_type | get_token () |
get next token from lexer | |
Private Attributes | |
const parser_callback_t< BasicJsonType > | callback = nullptr |
callback function | |
token_type | last_token = token_type::uninitialized |
the type of the last read token | |
lexer_t | m_lexer |
the lexer | |
const bool | allow_exceptions = true |
whether to throw exceptions in case of errors | |
syntax analysis
This class implements a recursive descent parser.
|
inline |
public parser interface
[in] | strict | whether to expect the last token to be EOF |
[in,out] | result | parsed JSON value |
parse_error.101 | in case of an unexpected token |
parse_error.102 | if to_unicode fails or surrogate error |
parse_error.103 | if to_unicode fails |
|
inline |
public accept interface
[in] | strict | whether to expect the last token to be EOF |