lexical analysis More...
#include <json.hpp>
Public Types | |
using | token_type = typename lexer_base< BasicJsonType >::token_type |
Public Types inherited from nlohmann::detail::lexer_base< BasicJsonType > | |
enum class | token_type { uninitialized , literal_true , literal_false , literal_null , value_string , value_unsigned , value_integer , value_float , begin_array , begin_object , end_array , end_object , name_separator , value_separator , parse_error , end_of_input , literal_or_value } |
token types for the parser More... | |
Public Member Functions | |
JSON_HEDLEY_RETURNS_NON_NULL constexpr const char * | get_error_message () const noexcept |
return syntax error message More... | |
constexpr number_float_t | get_number_float () const noexcept |
return floating-point value More... | |
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 position_t | get_position () const noexcept |
return position of last read token More... | |
string_t & | get_string () |
return current string value (implicitly resets the token; useful only once) More... | |
std::string | get_token_string () const |
return the last read token (for errors only). More... | |
lexer (const lexer &)=delete | |
lexer (InputAdapterType &&adapter, bool ignore_comments_=false) | |
lexer (lexer &&)=default | |
lexer & | operator= (lexer &&)=default |
lexer & | operator= (lexer &)=delete |
token_type | scan () |
bool | skip_bom () |
skip the UTF-8 byte order mark More... | |
void | skip_whitespace () |
~lexer ()=default | |
Additional Inherited Members | |
Static Public Member Functions inherited from nlohmann::detail::lexer_base< BasicJsonType > | |
JSON_HEDLEY_RETURNS_NON_NULL static JSON_HEDLEY_CONST 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.
using nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::token_type = typename lexer_base<BasicJsonType>::token_type |
|
explicit |
|
delete |
|
default |
|
default |
|
constexprnoexcept |
return syntax error message
|
constexprnoexcept |
return floating-point value
|
constexprnoexcept |
return integer value
|
constexprnoexcept |
return unsigned integer value
|
constexprnoexcept |
return position of last read token
string_t & nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::get_string | ( | ) |
return current string value (implicitly resets the token; useful only once)
std::string nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::get_token_string | ( | ) | const |
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.
|
default |
|
delete |
token_type nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::scan | ( | ) |
bool nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::skip_bom | ( | ) |
skip the UTF-8 byte order mark
References nlohmann::detail::get().
void nlohmann::detail::lexer< BasicJsonType, InputAdapterType >::skip_whitespace | ( | ) |
References nlohmann::detail::get().