Template Class lexer_base

Class Documentation

template<typename BasicJsonType>
class lexer_base

Public Types

enum class token_type

token types for the parser

Values:

enumerator uninitialized

indicating the scanner is uninitialized

enumerator literal_true

the true literal

enumerator literal_false

the false literal

enumerator literal_null

the null literal

enumerator value_string

a string &#8212; use get_string() for actual value

enumerator value_unsigned

an unsigned integer &#8212; use get_number_unsigned() for actual value

enumerator value_integer

a signed integer &#8212; use get_number_integer() for actual value

enumerator value_float

an floating point number &#8212; use get_number_float() for actual value

enumerator begin_array

the character for array begin [

enumerator begin_object

the character for object begin {

enumerator end_array

the character for array end ]

enumerator end_object

the character for object end }

enumerator name_separator

the name separator :

enumerator value_separator

the value separator ,

enumerator parse_error

indicating a parse error

enumerator end_of_input

indicating the end of the input buffer

enumerator literal_or_value

a literal or the begin of a value (only for diagnostics)

Public Static Functions

static inline JSON_HEDLEY_RETURNS_NON_NULL 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)