pub enum Token {
Show 83 variants
Ignored,
SymAnd,
SymAndAnd,
SymArrow,
SymAttr,
SymForwardSlash,
SymBang,
SymBracketLeft,
SymBracketRight,
SymBraceLeft,
SymBraceRight,
SymColon,
SymComma,
SymEqual,
SymEqualEqual,
SymNotEqual,
SymGreaterThan,
SymGreaterThanEqual,
SymShiftRight,
SymLessThan,
SymLessThanEqual,
SymShiftLeft,
SymModulo,
SymMinus,
SymMinusMinus,
SymPeriod,
SymPlus,
SymPlusPlus,
SymOr,
SymOrOr,
SymParenLeft,
SymParenRight,
SymSemicolon,
SymStar,
SymTilde,
SymUnderscore,
SymXor,
SymPlusEqual,
SymMinusEqual,
SymTimesEqual,
SymDivisionEqual,
SymModuloEqual,
SymAndEqual,
SymOrEqual,
SymXorEqual,
SymShiftRightAssign,
SymShiftLeftAssign,
KwAlias,
KwBreak,
KwCase,
KwConst,
KwConstAssert,
KwContinue,
KwContinuing,
KwDefault,
KwDiagnostic,
KwDiscard,
KwElse,
KwEnable,
KwFalse,
KwFn,
KwFor,
KwIf,
KwLet,
KwLoop,
KwOverride,
KwRequires,
KwReturn,
KwStruct,
KwSwitch,
KwTrue,
KwVar,
KwWhile,
Ident(String),
ReservedWord(String),
AbstractInt(i64),
AbstractFloat(f64),
I32(i32),
U32(u32),
F32(f32),
F16(f32),
TemplateArgsStart,
TemplateArgsEnd,
}
Variants§
Ignored
SymAnd
SymAndAnd
SymArrow
SymAttr
SymForwardSlash
SymBang
SymBracketLeft
SymBracketRight
SymBraceLeft
SymBraceRight
SymColon
SymComma
SymEqual
SymEqualEqual
SymNotEqual
SymGreaterThan
SymGreaterThanEqual
SymShiftRight
SymLessThan
SymLessThanEqual
SymShiftLeft
SymModulo
SymMinus
SymMinusMinus
SymPeriod
SymPlus
SymPlusPlus
SymOr
SymOrOr
SymParenLeft
SymParenRight
SymSemicolon
SymStar
SymTilde
SymUnderscore
SymXor
SymPlusEqual
SymMinusEqual
SymTimesEqual
SymDivisionEqual
SymModuloEqual
SymAndEqual
SymOrEqual
SymXorEqual
SymShiftRightAssign
SymShiftLeftAssign
KwAlias
KwBreak
KwCase
KwConst
KwConstAssert
KwContinue
KwContinuing
KwDefault
KwDiagnostic
KwDiscard
KwElse
KwEnable
KwFalse
KwFn
KwFor
KwIf
KwLet
KwLoop
KwOverride
KwRequires
KwReturn
KwStruct
KwSwitch
KwTrue
KwVar
KwWhile
Ident(String)
ReservedWord(String)
AbstractInt(i64)
AbstractFloat(f64)
I32(i32)
U32(u32)
F32(f32)
F16(f32)
TemplateArgsStart
TemplateArgsEnd
Implementations§
Trait Implementations§
Source§impl<'s> Logos<'s> for Token
impl<'s> Logos<'s> for Token
Source§type Error = ParseError
type Error = ParseError
Error type returned by the lexer. This can be set using
#[logos(error = MyError)]
. Defaults to ()
if not set.Source§type Extras = LexerState
type Extras = LexerState
Associated type
Extras
for the particular lexer. This can be set using
#[logos(extras = MyExtras)]
and accessed inside callbacks.Source§type Source = str
type Source = str
Source type this token can be lexed from. This will default to
str
,
unless one of the defined patterns explicitly uses non-unicode byte values
or byte slices, in which case that implementation will use [u8]
.Source§fn lex(lex: &mut Lexer<'s, Self>)
fn lex(lex: &mut Lexer<'s, Self>)
The heart of Logos. Called by the
Lexer
. The implementation for this function
is generated by the logos-derive
crate.impl StructuralPartialEq for Token
Auto Trait Implementations§
impl Freeze for Token
impl RefUnwindSafe for Token
impl Send for Token
impl Sync for Token
impl Unpin for Token
impl UnwindSafe for Token
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more