enum
TOML::TokenKind
Overview
Token kinds emitted by the lexer.
The lexer is intentionally fine-grained for structural elements
(so the parser does not need to look at characters), and
coarse-grained for value atoms (Number, BareKeyOrAtom) — those
are disambiguated by the parser based on context (a 1979 after
= in a key/value pair could be an integer, a float, a date, or
part of a datetime; only the parser can decide).
Trivia tokens (Whitespace, Newline, Comment) are emitted rather than skipped, because the AST keeps them attached to their nodes for byte-identical round-trips.
Defined in:
toml/token.crEnum Members
-
Whitespace =
0 -
Trivia.
-
Newline =
1 -
Comment =
2 -
Equal =
3 -
Structural punctuation.
-
Dot =
4 -
Comma =
5 -
LBracket =
6 -
RBracket =
7 -
LBrace =
8 -
RBrace =
9 -
BasicString =
10 -
Strings (delimiters included in the raw text).
-
MultilineBasicString =
11 -
LiteralString =
12 -
MultilineLiteralString =
13 -
BareKeyOrAtom =
14 -
An atom that can be a bare key (a-z A-Z 0-9 _ -) OR a value atom (integer, float, boolean, datetime, inf, nan, true, false). The parser disambiguates by context. We keep the raw text byte-for-byte so the serializer can re-emit it unchanged.
-
EOF =
15 -
End of input.
Instance Method Summary
-
#bare_key_or_atom?
Returns
trueif this enum value equalsBareKeyOrAtom -
#basic_string?
Returns
trueif this enum value equalsBasicString -
#comma?
Returns
trueif this enum value equalsComma -
#comment?
Returns
trueif this enum value equalsComment -
#dot?
Returns
trueif this enum value equalsDot -
#eof?
Returns
trueif this enum value equalsEOF -
#equal?
Returns
trueif this enum value equalsEqual -
#l_brace?
Returns
trueif this enum value equalsLBrace -
#l_bracket?
Returns
trueif this enum value equalsLBracket -
#literal_string?
Returns
trueif this enum value equalsLiteralString -
#multiline_basic_string?
Returns
trueif this enum value equalsMultilineBasicString -
#multiline_literal_string?
Returns
trueif this enum value equalsMultilineLiteralString -
#newline?
Returns
trueif this enum value equalsNewline -
#r_brace?
Returns
trueif this enum value equalsRBrace -
#r_bracket?
Returns
trueif this enum value equalsRBracket -
#whitespace?
Returns
trueif this enum value equalsWhitespace