pub struct Lexer<Token: Logos, Source> {
pub token: Token,
pub extras: Token::Extras,
/* private fields */
}
Expand description
Lexer
is the main struct of the crate that allows you to read through a
Source
and produce tokens implementing the Logos
trait.
Fields
token: Token
Current token. Call the advance
method to get a new token.
extras: Token::Extras
Extras associated with the Token
.
Implementations
Auto Trait Implementations
impl<Token, Source> RefUnwindSafe for Lexer<Token, Source>where
Source: RefUnwindSafe,
Token: RefUnwindSafe,
<Token as Logos>::Extras: RefUnwindSafe,
impl<Token, Source> Send for Lexer<Token, Source>where
Source: Send,
Token: Send,
<Token as Logos>::Extras: Send,
impl<Token, Source> Sync for Lexer<Token, Source>where
Source: Sync,
Token: Sync,
<Token as Logos>::Extras: Sync,
impl<Token, Source> Unpin for Lexer<Token, Source>where
Source: Unpin,
Token: Unpin,
<Token as Logos>::Extras: Unpin,
impl<Token, Source> UnwindSafe for Lexer<Token, Source>where
Source: UnwindSafe,
Token: UnwindSafe,
<Token as Logos>::Extras: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more