pub struct DefaultErrorStrategy<'input, Ctx: ParserNodeType<'input>> { /* private fields */ }
Expand description
This is the default implementation of ErrorStrategy
used for
error reporting and recovery in ANTLR parsers.
Implementations§
Source§impl<'input, Ctx: ParserNodeType<'input>> DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx: ParserNodeType<'input>> DefaultErrorStrategy<'input, Ctx>
Trait Implementations§
Source§impl<'input, Ctx: Debug + ParserNodeType<'input>> Debug for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx: Debug + ParserNodeType<'input>> Debug for DefaultErrorStrategy<'input, Ctx>
Source§impl<'input, Ctx: ParserNodeType<'input>> Default for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx: ParserNodeType<'input>> Default for DefaultErrorStrategy<'input, Ctx>
Source§impl<'a, T: Parser<'a>> ErrorStrategy<'a, T> for DefaultErrorStrategy<'a, T::Node>
impl<'a, T: Parser<'a>> ErrorStrategy<'a, T> for DefaultErrorStrategy<'a, T::Node>
Source§fn reset(&mut self, recognizer: &mut T)
fn reset(&mut self, recognizer: &mut T)
Reset the error handler state for the specified
recognizer
.Source§fn recover_inline(
&mut self,
recognizer: &mut T,
) -> Result<<T::TF as TokenFactory<'a>>::Tok, ANTLRError>
fn recover_inline( &mut self, recognizer: &mut T, ) -> Result<<T::TF as TokenFactory<'a>>::Tok, ANTLRError>
This method is called when an unexpected symbol is encountered during an
inline match operation, such as
Parser::match
. If the error
strategy successfully recovers from the match failure, this method
returns the Token
instance which should be treated as the
successful result of the match. Read moreSource§fn recover(
&mut self,
recognizer: &mut T,
_e: &ANTLRError,
) -> Result<(), ANTLRError>
fn recover( &mut self, recognizer: &mut T, _e: &ANTLRError, ) -> Result<(), ANTLRError>
This method is called to recover from error
e
. This method is
called after ErrorStrategy::reportError
by the default error handler
generated for a rule method.Source§fn sync(&mut self, recognizer: &mut T) -> Result<(), ANTLRError>
fn sync(&mut self, recognizer: &mut T) -> Result<(), ANTLRError>
This method provides the error handler with an opportunity to handle
syntactic or semantic errors in the input stream before they result in a
error. Read more
Source§fn in_error_recovery_mode(&mut self, _recognizer: &mut T) -> bool
fn in_error_recovery_mode(&mut self, _recognizer: &mut T) -> bool
Tests whether or not {@code recognizer} is in the process of recovering
from an error. In error recovery mode,
Parser::consume
will create
ErrorNode
leaf instead of TerminalNode
oneSource§fn report_error(&mut self, recognizer: &mut T, e: &ANTLRError)
fn report_error(&mut self, recognizer: &mut T, e: &ANTLRError)
Report any kind of
ANTLRError
. This method is called by
the default exception handler generated for a rule method.Source§fn report_match(&mut self, recognizer: &mut T)
fn report_match(&mut self, recognizer: &mut T)
This method is called when the parser successfully matches an input
symbol.
impl<'i, Ctx> TidAble<'i> for DefaultErrorStrategy<'i, Ctx>where
Ctx: ParserNodeType<'i> + TidAble<'i>,
Auto Trait Implementations§
impl<'input, Ctx> Freeze for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx> RefUnwindSafe for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx> !Send for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx> !Sync for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx> Unpin for DefaultErrorStrategy<'input, Ctx>
impl<'input, Ctx> UnwindSafe for DefaultErrorStrategy<'input, Ctx>
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T
behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T
behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T
behind Rc
pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T
behind Arc
pointerSource§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
Source§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
Source§impl<'a, X> TidExt<'a> for X
impl<'a, X> TidExt<'a> for X
Source§fn is<T>(&self) -> boolwhere
T: Tid<'a>,
fn is<T>(&self) -> boolwhere
T: Tid<'a>,
Returns true if type behind self is equal to the type of T.
Source§fn downcast_ref<'b, T>(&'b self) -> Option<&'b T>where
T: Tid<'a>,
fn downcast_ref<'b, T>(&'b self) -> Option<&'b T>where
T: Tid<'a>,
Attempts to downcast self to
T
behind referenceSource§fn downcast_mut<'b, T>(&'b mut self) -> Option<&'b mut T>where
T: Tid<'a>,
fn downcast_mut<'b, T>(&'b mut self) -> Option<&'b mut T>where
T: Tid<'a>,
Attempts to downcast self to
T
behind mutable referenceSource§fn downcast_rc<T>(self: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Tid<'a>,
fn downcast_rc<T>(self: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Tid<'a>,
Attempts to downcast self to
T
behind Rc
pointerSource§fn downcast_arc<T>(self: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Tid<'a>,
fn downcast_arc<T>(self: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Tid<'a>,
Attempts to downcast self to
T
behind Arc
pointer