pub enum Token {
Show 50 variants
Whitespace,
Comment,
True,
False,
If,
Permit,
Forbid,
When,
Unless,
In,
Has,
Like,
Is,
Then,
Else,
Principal,
Action,
Resource,
Context,
PrincipalSlot,
ResourceSlot,
Identifier(SmolStr),
Number(SmolStr),
Str(SmolStr),
At,
Dot,
Comma,
SemiColon,
Colon,
DoubleColon,
LParen,
RParen,
LBrace,
RBrace,
LBracket,
RBracket,
Equal,
NotEqual,
Lt,
Le,
Gt,
Ge,
Or,
And,
Add,
Dash,
Mul,
Div,
Modulo,
Neg,
}
Variants§
Whitespace
Comment
True
False
If
Permit
Forbid
When
Unless
In
Has
Like
Is
Then
Else
Principal
Action
Resource
Context
PrincipalSlot
ResourceSlot
Identifier(SmolStr)
Number(SmolStr)
Str(SmolStr)
At
Dot
Comma
SemiColon
Colon
DoubleColon
LParen
RParen
LBrace
RBrace
LBracket
RBracket
Equal
NotEqual
Lt
Le
Gt
Ge
Or
And
Add
Dash
Mul
Div
Modulo
Neg
Trait Implementations§
Source§impl<'s> Logos<'s> for Token
impl<'s> Logos<'s> for Token
Source§type Error = ()
type Error = ()
Error type returned by the lexer. This can be set using
#[logos(error = MyError)]
. Defaults to ()
if not set.Source§type Extras = ()
type Extras = ()
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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