Simox
2.3.74.0
|
lexical analysis More...
Public Member Functions | |
lexer (detail::input_adapter_t &&adapter) | |
lexer (const lexer &)=delete | |
lexer (lexer &&)=delete | |
lexer & | operator= (lexer &)=delete |
lexer & | operator= (lexer &&)=delete |
~lexer ()=default | |
constexpr number_integer_t | get_number_integer () const noexcept |
return integer value More... | |
constexpr number_unsigned_t | get_number_unsigned () const noexcept |
return unsigned integer value More... | |
constexpr number_float_t | get_number_float () const noexcept |
return floating-point value More... | |
string_t & | get_string () |
return current string value (implicitly resets the token; useful only once) More... | |
constexpr position_t | get_position () const noexcept |
return position of last read token More... | |
std::string | get_token_string () const |
constexpr const char * | get_error_message () const noexcept |
return syntax error message More... | |
bool | skip_bom () |
skip the UTF-8 byte order mark More... | |
token_type | scan () |
Static Public Member Functions | |
static const char * | token_type_name (const token_type t) noexcept |
return name of values of type token_type (only used for errors) More... | |
lexical analysis
This class organizes the lexical analysis during JSON deserialization.
|
strong |
token types for the parser
Enumerator | |
---|---|
uninitialized | indicating the scanner is uninitialized |
literal_true | the |
literal_false | the |
literal_null | the |
value_string | a string – use get_string() for actual value |
value_unsigned | an unsigned integer – use get_number_unsigned() for actual value |
value_integer | a signed integer – use get_number_integer() for actual value |
value_float | an floating point number – use get_number_float() for actual value |
begin_array | the character for array begin |
begin_object | the character for object begin |
end_array | the character for array end |
end_object | the character for object end |
name_separator | the name separator |
value_separator | the value separator |
parse_error | indicating a parse error |
end_of_input | indicating the end of the input buffer |
literal_or_value | a literal or the begin of a value (only for diagnostics) |
|
inlineexplicit |
|
delete |
|
delete |
|
default |
|
inlinenoexcept |
return syntax error message
|
inlinenoexcept |
return floating-point value
|
inlinenoexcept |
return integer value
|
inlinenoexcept |
return unsigned integer value
|
inlinenoexcept |
return position of last read token
|
inline |
return current string value (implicitly resets the token; useful only once)
|
inline |
return the last read token (for errors only). Will never contain EOF (an arbitrary value that is not a valid char value, often -1), because 255 may legitimately occur. May contain NUL, which should be escaped.
|
delete |
|
delete |
|
inline |
|
inline |
skip the UTF-8 byte order mark
|
inlinestaticnoexcept |
return name of values of type token_type (only used for errors)