struct Lexer<'src> {
file: FileId,
source: &'src str,
bytes: &'src [u8],
pos: usize,
modes: Vec<Mode>,
tokens: Vec<Token>,
diagnostics: Vec<Diagnostic>,
}Fields§
§file: FileId§source: &'src str§bytes: &'src [u8]§pos: usize§modes: Vec<Mode>§tokens: Vec<Token>§diagnostics: Vec<Diagnostic>Implementations§
Source§impl Lexer<'_>
impl Lexer<'_>
fn run(&mut self)
fn lex_code(&mut self)
fn close_brace(&mut self) -> TokenKind
fn lex_string_part(&mut self, string_start: usize)
fn escape(&mut self)
fn number(&mut self) -> TokenKind
fn digits(&mut self)
fn identifier(&mut self, start: usize) -> TokenKind
fn unexpected_character(&mut self, start: usize)
fn with_eq(&mut self, single: TokenKind, with_eq: TokenKind) -> TokenKind
fn peek(&self) -> Option<u8>
fn eat(&mut self, expected: u8) -> bool
fn push(&mut self, kind: TokenKind, start: usize)
fn span(&self, start: usize, end: usize) -> Span
fn error(&mut self, message: impl Into<String>, span: Span)
Auto Trait Implementations§
impl<'src> Freeze for Lexer<'src>
impl<'src> RefUnwindSafe for Lexer<'src>
impl<'src> Send for Lexer<'src>
impl<'src> Sync for Lexer<'src>
impl<'src> Unpin for Lexer<'src>
impl<'src> UnsafeUnpin for Lexer<'src>
impl<'src> UnwindSafe for Lexer<'src>
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