pub enum Token {
Show 113 variants
Whitespace,
Linebreak,
CommentLine,
CommentBlock,
IdVariants(IdVariants),
AddressLiteral,
Integer,
StaticString,
Assign,
Not,
And,
AndAssign,
Or,
OrAssign,
BitAnd,
BitAndAssign,
BitOr,
BitOrAssign,
BitXor,
BitXorAssign,
Eq,
NotEq,
Lt,
LtEq,
Gt,
GtEq,
Add,
AddAssign,
Sub,
SubAssign,
Mul,
MulAssign,
Div,
DivAssign,
Pow,
PowAssign,
Rem,
RemAssign,
Shl,
ShlAssign,
Shr,
ShrAssign,
LeftParen,
RightParen,
LeftSquare,
RightSquare,
LeftCurly,
RightCurly,
Comma,
Dot,
DotDot,
Semicolon,
Colon,
DoubleColon,
Question,
Arrow,
BigArrow,
Underscore,
At,
True,
False,
None,
Address,
Bool,
Field,
Group,
I8,
I16,
I32,
I64,
I128,
Record,
Scalar,
Signature,
String,
Struct,
U8,
U16,
U32,
U64,
U128,
Aleo,
As,
Assert,
AssertEq,
AssertNeq,
Async,
Block,
Const,
Constant,
Constructor,
Else,
Fn,
For,
Function,
Future,
If,
Import,
In,
Inline,
Let,
Mapping,
Storage,
Network,
Private,
Program,
Public,
Return,
Script,
SelfLower,
Transition,
Bidi,
Never,
}Variants§
Whitespace
Linebreak
CommentLine
CommentBlock
IdVariants(IdVariants)
AddressLiteral
Integer
StaticString
Assign
Not
And
AndAssign
Or
OrAssign
BitAnd
BitAndAssign
BitOr
BitOrAssign
BitXor
BitXorAssign
Eq
NotEq
Lt
LtEq
Gt
GtEq
Add
AddAssign
Sub
SubAssign
Mul
MulAssign
Div
DivAssign
Pow
PowAssign
Rem
RemAssign
Shl
ShlAssign
Shr
ShrAssign
LeftParen
RightParen
LeftSquare
RightSquare
LeftCurly
RightCurly
Comma
Dot
DotDot
Semicolon
Colon
DoubleColon
Question
Arrow
BigArrow
Underscore
At
True
False
None
Address
Bool
Field
Group
I8
I16
I32
I64
I128
Record
Scalar
Signature
String
Struct
U8
U16
U32
U64
U128
Aleo
As
Assert
AssertEq
AssertNeq
Async
Block
Const
Constant
Constructor
Else
Fn
For
Function
Future
If
Import
In
Inline
Let
Mapping
Storage
Network
Private
Program
Public
Return
Script
SelfLower
Transition
Bidi
Never
Implementations§
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.§fn lexer(source: &'source Self::Source) -> Lexer<'source, Self> ⓘwhere
Self::Extras: Default,
fn lexer(source: &'source Self::Source) -> Lexer<'source, Self> ⓘwhere
Self::Extras: Default,
Create a new instance of a
Lexer that will produce tokens implementing
this Logos.§fn lexer_with_extras(
source: &'source Self::Source,
extras: Self::Extras,
) -> Lexer<'source, Self> ⓘ
fn lexer_with_extras( source: &'source Self::Source, extras: Self::Extras, ) -> Lexer<'source, Self> ⓘ
Create a new instance of a
Lexer with the provided Extras that will
produce tokens implementing this Logos.impl Copy for Token
impl Eq for Token
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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