enum TokenKindEvery lexical category emitted by the canonical scanner.
Cases cover literals, keywords, punctuation, prefixed payloads, and the parser-only EOF sentinel. Stable names and spellings feed diagnostics, dumps, macro token records, and compatibility tests, so changing a case affects more than the parser's local dispatch.
Cases
case identifier
An unquoted or backtick-quoted identifier.
case int_number
A decimal integer literal.
case float_number
A floating-point literal.
case string_literal
A double-quoted string literal.
case character_literal
A single-quoted character literal.
case keyword_let
The let keyword.
case keyword_true
The Boolean literal true.
case keyword_false
The Boolean literal false.
case equals
The = punctuation or operator token.
case comma
The , punctuation or operator token.
case dot
The . punctuation or operator token.
case dot_dot
The .. punctuation or operator token.
case dot_dot_dot
The ... punctuation or operator token.
case dot_dot_less
The ..< punctuation or operator token.
case left_paren
The ( punctuation or operator token.
case right_paren
The ) punctuation or operator token.
case left_bracket
The [ punctuation or operator token.
case right_bracket
The ] punctuation or operator token.
case left_brace
The { punctuation or operator token.
case right_brace
The } punctuation or operator token.
case newline
A logical line break retained for statement separation.
case underscore
A standalone _ wildcard or omitted label.
case keyword_any
The any keyword.
case keyword_as
The as keyword.
case keyword_func
The func keyword.
case keyword_if
The if keyword.
case keyword_else
The else keyword.
case keyword_loop
The loop keyword.
case keyword_enum
The enum keyword.
case keyword_case
The case keyword.
case keyword_match
The match keyword.
case keyword_return
The return keyword.
case keyword_struct
The struct keyword.
case keyword_extend
The extend keyword.
case keyword_break
The break keyword.
case keyword_init
The init keyword.
case keyword_protocol
The protocol keyword.
case keyword_import
The import keyword.
case keyword_use
The use keyword.
case keyword_pub
The pub keyword.
case keyword_public
The public keyword.
case keyword_linear
The linear keyword.
case keyword_macro
The macro keyword.
case keyword_static
The static keyword.
case keyword_associated
The associated keyword.
case keyword_typealias
The typealias keyword.
case keyword_effect
The effect keyword.
case keyword_handling
The handling keyword.
case keyword_in
The in keyword.
case keyword_continue
The continue keyword.
case keyword_unreachable
The unreachable keyword.
case keyword_mut
The mut keyword.
case keyword_consuming
The consuming keyword.
case keyword_for
The for keyword.
case plus
The + punctuation or operator token.
case plus_equals
The += punctuation or operator token.
case minus
The - punctuation or operator token.
case minus_equals
The -= punctuation or operator token.
case arrow
The -> punctuation or operator token.
case star
The * punctuation or operator token.
case star_equals
The *= punctuation or operator token.
case slash
The / punctuation or operator token.
case slash_equals
The /= punctuation or operator token.
case percent
The % punctuation or operator token.
case bang
The ! punctuation or operator token.
case bang_equals
The != punctuation or operator token.
case equals_equals
The == punctuation or operator token.
case less
The < punctuation or operator token.
case less_equals
The <= punctuation or operator token.
case less_less
The << punctuation or operator token.
case greater
The > punctuation or operator token.
case greater_equals
The >= punctuation or operator token.
case greater_greater
The >> punctuation or operator token.
case amp
The & punctuation or operator token.
case amp_amp
The && punctuation or operator token.
case amp_equals
The &= punctuation or operator token.
case pipe
The | punctuation or operator token.
case pipe_pipe
The || punctuation or operator token.
case colon
The : punctuation or operator token.
case double_colon
The :: punctuation or operator token.
case question_mark
The ? punctuation or operator token.
case semicolon
The ; punctuation or operator token.
case at_sign
The @ punctuation or operator token.
case tilde
The ~ punctuation or operator token.
case tilde_equals
The ~= punctuation or operator token.
case caret
The ^ punctuation or operator token.
case caret_equals
The ^= punctuation or operator token.
case attribute
An @-prefixed attribute name whose lexeme excludes the sigil.
case dollar
A $-prefixed macro antiquotation name.
case bound_var
A $-prefixed type-inference variable.
case hash
A #-prefixed compiler form such as #unsafe or #handle.
case ir_register
A %-prefixed inline-IR register.
case effect_name
A quote-prefixed effect name.
case single_quote
A standalone quote token.
case eof
Never produced by scan: the parser-side end-of-stream sentinel.
case line_comment
Comments re-enter the stream only through lex_tokens (the highlighter's surface); the parser never sees them.