pub enum TokenKind {
Show 33 variants
Ident,
Number(i128),
StringLit,
CharLit(u8),
Directive,
LabelDef,
NumericLabelDef(u32),
NumericLabelFwd(u32),
NumericLabelBwd(u32),
Comma,
OpenBracket,
CloseBracket,
Plus,
Minus,
Star,
Colon,
Equals,
OpenBrace,
CloseBrace,
OpenParen,
CloseParen,
Bang,
Percent,
Dollar,
Slash,
Ampersand,
Pipe,
Caret,
Tilde,
LShift,
RShift,
Newline,
Eof,
}Expand description
The type of a token.
Variants§
Ident
An identifier: mnemonic, register name, or label reference.
Number(i128)
A numeric literal (integer).
StringLit
A string literal (content without quotes).
CharLit(u8)
A character literal (e.g., ‘A’).
Directive
A directive (starts with .).
LabelDef
Label definition (name:).
NumericLabelDef(u32)
Numeric label definition (1:).
NumericLabelFwd(u32)
Numeric label forward reference (1f).
NumericLabelBwd(u32)
Numeric label backward reference (1b).
Comma
Comma separator.
OpenBracket
Open bracket [.
CloseBracket
Close bracket ].
Plus
Plus +.
Minus
Minus -.
Star
Asterisk * (for scale in memory operands).
Colon
Colon : (segment override: fs:).
Equals
Equals = (constant assignment: name = value).
OpenBrace
Open brace { (ARM register list).
CloseBrace
Close brace } (ARM register list).
OpenParen
Open parenthesis ( (RISC-V memory operand).
CloseParen
Close parenthesis ) (RISC-V memory operand).
Bang
Exclamation mark ! (ARM writeback).
Percent
Percent sign % (AT&T register prefix).
Dollar
Dollar sign $ (AT&T immediate prefix).
Slash
Forward slash / (SVE predicate qualifier: p0/m, p0/z).
Ampersand
Ampersand & (bitwise AND in constant expressions).
Pipe
Pipe | (bitwise OR in constant expressions).
Caret
Caret ^ (bitwise XOR in constant expressions).
Tilde
Tilde ~ (bitwise NOT in constant expressions).
LShift
Left shift <<.
RShift
Right shift >>.
Newline
A newline (statement separator).
Eof
End of input.