Struct regex_syntax::ast::parse::NestLimiter
source · struct NestLimiter<'p, 's, P> {
p: &'p ParserI<'s, P>,
depth: u32,
}
Expand description
A type that traverses a fully parsed Ast and checks whether its depth exceeds the specified nesting limit. If it does, then an error is returned.
Fields§
§p: &'p ParserI<'s, P>
The parser that is checking the nest limit.
depth: u32
The current depth while walking an Ast.
Implementations§
Trait Implementations§
source§impl<'p, 's, P: Debug> Debug for NestLimiter<'p, 's, P>
impl<'p, 's, P: Debug> Debug for NestLimiter<'p, 's, P>
source§impl<'p, 's, P: Borrow<Parser>> Visitor for NestLimiter<'p, 's, P>
impl<'p, 's, P: Borrow<Parser>> Visitor for NestLimiter<'p, 's, P>
source§fn finish(self) -> Result<(), Error>
fn finish(self) -> Result<(), Error>
All implementors of
Visitor
must provide a finish
method, which
yields the result of visiting the AST or an error.source§fn visit_pre(&mut self, ast: &Ast) -> Result<(), Error>
fn visit_pre(&mut self, ast: &Ast) -> Result<(), Error>
This method is called on an
Ast
before descending into child Ast
nodes.source§fn visit_post(&mut self, ast: &Ast) -> Result<(), Error>
fn visit_post(&mut self, ast: &Ast) -> Result<(), Error>
This method is called on an
Ast
after descending all of its child
Ast
nodes.source§fn visit_class_set_item_pre(&mut self, ast: &ClassSetItem) -> Result<(), Error>
fn visit_class_set_item_pre(&mut self, ast: &ClassSetItem) -> Result<(), Error>
This method is called on every
ClassSetItem
before descending into child nodes.source§fn visit_class_set_item_post(&mut self, ast: &ClassSetItem) -> Result<(), Error>
fn visit_class_set_item_post(&mut self, ast: &ClassSetItem) -> Result<(), Error>
This method is called on every
ClassSetItem
after descending into child nodes.source§fn visit_class_set_binary_op_pre(
&mut self,
ast: &ClassSetBinaryOp,
) -> Result<(), Error>
fn visit_class_set_binary_op_pre( &mut self, ast: &ClassSetBinaryOp, ) -> Result<(), Error>
This method is called on every
ClassSetBinaryOp
before descending into
child nodes.source§fn visit_class_set_binary_op_post(
&mut self,
_ast: &ClassSetBinaryOp,
) -> Result<(), Error>
fn visit_class_set_binary_op_post( &mut self, _ast: &ClassSetBinaryOp, ) -> Result<(), Error>
This method is called on every
ClassSetBinaryOp
after descending into child
nodes.source§fn visit_alternation_in(&mut self) -> Result<(), Self::Err>
fn visit_alternation_in(&mut self) -> Result<(), Self::Err>
This method is called between child nodes of an
Alternation
.source§fn visit_concat_in(&mut self) -> Result<(), Self::Err>
fn visit_concat_in(&mut self) -> Result<(), Self::Err>
This method is called between child nodes of a concatenation.
source§fn visit_class_set_binary_op_in(
&mut self,
_ast: &ClassSetBinaryOp,
) -> Result<(), Self::Err>
fn visit_class_set_binary_op_in( &mut self, _ast: &ClassSetBinaryOp, ) -> Result<(), Self::Err>
This method is called between the left hand and right hand child nodes
of a
ClassSetBinaryOp
.Auto Trait Implementations§
impl<'p, 's, P> Freeze for NestLimiter<'p, 's, P>
impl<'p, 's, P> RefUnwindSafe for NestLimiter<'p, 's, P>where
P: RefUnwindSafe,
impl<'p, 's, P> Send for NestLimiter<'p, 's, P>where
P: Sync,
impl<'p, 's, P> Sync for NestLimiter<'p, 's, P>where
P: Sync,
impl<'p, 's, P> Unpin for NestLimiter<'p, 's, P>
impl<'p, 's, P> UnwindSafe for NestLimiter<'p, 's, P>where
P: RefUnwindSafe,
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