[][src]Trait antlr_rust::Lexer

pub trait Lexer<'input>: TokenSource<'input> + Recognizer<'input, Node = EmptyContextType<'input, Self::TF>> {
    fn set_channel(&mut self, v: isize);
fn push_mode(&mut self, m: usize);
fn pop_mode(&mut self) -> Option<usize>;
fn set_type(&mut self, t: isize);
fn set_mode(&mut self, m: usize);
fn more(&mut self);
fn skip(&mut self);
fn reset(&mut self);
fn get_interpreter(&self) -> Option<&LexerATNSimulator>; }

Required methods

fn set_channel(&mut self, v: isize)

Sets channel where current token will be pushed

By default two channels are available:

  • LEXER_DEFAULT_TOKEN_CHANNEL
  • LEXER_HIDDEN

fn push_mode(&mut self, m: usize)

Pushes current mode to internal mode stack and sets m as current lexer mode `pop_mode should be used to recover previous mode

fn pop_mode(&mut self) -> Option<usize>

Pops mode from internal mode stack

fn set_type(&mut self, t: isize)

Sets type of the current token Called from action to override token that will be emitted by lexer

fn set_mode(&mut self, m: usize)

Sets lexer mode discarding current one

fn more(&mut self)

Used to informs lexer that it should consider next token as a continuation of the current one

fn skip(&mut self)

Tells lexer to completely ignore and not emit current token.

fn reset(&mut self)

fn get_interpreter(&self) -> Option<&LexerATNSimulator>

Loading content...

Implementors

impl<'input, T, Input, TF> Lexer<'input> for BaseLexer<'input, T, Input, TF> where
    T: LexerRecog<'input, Self> + 'static,
    Input: CharStream<TF::From>,
    TF: TokenFactory<'input>, 
[src]

Loading content...