pub trait Parser<'input>: Recognizer<'input> {
Show 17 methods
    // Required methods
    fn get_interpreter(&self) -> &ParserATNSimulator;
    fn get_token_factory(&self) -> &'input Self::TF;
    fn get_parser_rule_context(
        &self,
    ) -> &Rc<<Self::Node as ParserNodeType<'input>>::Type>;
    fn consume(&mut self, err_handler: &mut impl ErrorStrategy<'input, Self>)
       where Self: Sized;
    fn precpred(
        &self,
        localctx: Option<&<Self::Node as ParserNodeType<'input>>::Type>,
        precedence: isize,
    ) -> bool;
    fn get_input_stream_mut(
        &mut self,
    ) -> &mut dyn TokenStream<'input, TF = Self::TF>;
    fn get_input_stream(&self) -> &dyn TokenStream<'input, TF = Self::TF>;
    fn get_current_token(&self) -> &<Self::TF as TokenFactory<'input>>::Tok;
    fn get_expected_tokens(&self) -> IntervalSet;
    fn add_error_listener(
        &mut self,
        listener: Box<dyn ErrorListener<'input, Self>>,
    )
       where Self: Sized;
    fn notify_error_listeners(
        &self,
        msg: String,
        offending_token: Option<isize>,
        err: Option<&ANTLRError>,
    );
    fn get_error_lister_dispatch<'a>(
        &'a self,
    ) -> Box<dyn ErrorListener<'input, Self> + 'a>
       where Self: Sized;
    fn is_expected_token(&self, symbol: isize) -> bool;
    fn get_precedence(&self) -> isize;
    fn get_state(&self) -> isize;
    fn set_state(&mut self, v: isize);
    fn get_rule_invocation_stack(&self) -> Vec<String>;
}Expand description
parser functionality required for ParserATNSimulator to work