Enum regex_syntax::ast::visitor::ClassFrame
source · enum ClassFrame<'a> {
Union {
head: &'a ClassSetItem,
tail: &'a [ClassSetItem],
},
Binary {
op: &'a ClassSetBinaryOp,
},
BinaryLHS {
op: &'a ClassSetBinaryOp,
lhs: &'a ClassSet,
rhs: &'a ClassSet,
},
BinaryRHS {
op: &'a ClassSetBinaryOp,
rhs: &'a ClassSet,
},
}
Expand description
Represents a single stack frame while performing structural induction over a character class.
Variants§
Union
The stack frame used while visiting every child node of a union of character class items.
Fields
§
head: &'a ClassSetItem
The child node we are currently visiting.
§
tail: &'a [ClassSetItem]
The remaining child nodes to visit (which may be empty).
Binary
The stack frame used while a binary class operation.
Fields
§
op: &'a ClassSetBinaryOp
BinaryLHS
A stack frame allocated just before descending into a binary operator’s left hand child node.
BinaryRHS
A stack frame allocated just before descending into a binary operator’s right hand child node.
Implementations§
source§impl<'a> ClassFrame<'a>
impl<'a> ClassFrame<'a>
sourcefn child(&self) -> ClassInduct<'a>
fn child(&self) -> ClassInduct<'a>
Perform the next inductive step on this frame and return the next child class node to visit.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for ClassFrame<'a>
impl<'a> RefUnwindSafe for ClassFrame<'a>
impl<'a> Send for ClassFrame<'a>
impl<'a> Sync for ClassFrame<'a>
impl<'a> Unpin for ClassFrame<'a>
impl<'a> UnwindSafe for ClassFrame<'a>
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