pub enum Token<'a> {
Show 39 variants
SingleLineComment(&'a str),
MultiLineComment(&'a str),
Eq,
Colon,
Semicolon,
Comma,
Period,
OpenPth,
ClosePth,
OpenBracket,
CloseBracket,
OpenBrace,
CloseBrace,
OpenAngle,
CloseAngle,
Boolean(bool),
Integer(i64),
To,
Max,
Syntax,
Option,
Package,
Import,
Service,
Rpc,
Stream,
Returns,
Message,
OneOf,
Extend,
Enum,
Reserved,
Extensions,
Optional,
Required,
Repeated,
Map,
String(&'a str),
Ident(&'a str),
}Expand description
Token kinds produced by the lexer.
Variants§
SingleLineComment(&'a str)
MultiLineComment(&'a str)
Eq
Colon
Semicolon
Comma
Period
OpenPth
ClosePth
OpenBracket
CloseBracket
OpenBrace
CloseBrace
OpenAngle
CloseAngle
Boolean(bool)
Integer(i64)
To
Max
Syntax
Option
Package
Import
Service
Rpc
Stream
Returns
Message
OneOf
Extend
Enum
Reserved
Extensions
Optional
Required
Repeated
Map
String(&'a str)
Ident(&'a str)
Trait Implementations§
Source§impl<'s> Logos<'s> for Token<'s>
impl<'s> Logos<'s> for Token<'s>
Source§type Error = LexicalErrorKind
type Error = LexicalErrorKind
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>,
) -> Option<Result<Self, <Self as Logos<'s>>::Error>>
fn lex( lex: &mut Lexer<'s, Self>, ) -> Option<Result<Self, <Self as Logos<'s>>::Error>>
The heart of Logos. Called by the
Lexer. The implementation for this function
is generated by the logos-derive crate.impl<'a> StructuralPartialEq for Token<'a>
Auto Trait Implementations§
impl<'a> Freeze for Token<'a>
impl<'a> RefUnwindSafe for Token<'a>
impl<'a> Send for Token<'a>
impl<'a> Sync for Token<'a>
impl<'a> Unpin for Token<'a>
impl<'a> UnwindSafe for Token<'a>
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