Struct miri::borrow_tracker::tree_borrows::tree::TreeVisitAux
source · struct TreeVisitAux<NodeApp, ErrHandler> {
f_propagate: NodeApp,
err_builder: ErrHandler,
stack: Vec<(UniIndex, AccessRelatedness)>,
}Fields§
§f_propagate: NodeApp§err_builder: ErrHandler§stack: Vec<(UniIndex, AccessRelatedness)>Implementations§
source§impl<NodeApp, InnErr, OutErr, ErrHandler> TreeVisitAux<NodeApp, ErrHandler>where
NodeApp: Fn(NodeAppArgs<'_>) -> Result<ContinueTraversal, InnErr>,
ErrHandler: Fn(ErrHandlerArgs<'_, InnErr>) -> OutErr,
impl<NodeApp, InnErr, OutErr, ErrHandler> TreeVisitAux<NodeApp, ErrHandler>where NodeApp: Fn(NodeAppArgs<'_>) -> Result<ContinueTraversal, InnErr>, ErrHandler: Fn(ErrHandlerArgs<'_, InnErr>) -> OutErr,
fn pop(&mut self) -> Option<(UniIndex, AccessRelatedness)>
sourcefn exec_and_visit(
&mut self,
this: &mut TreeVisitor<'_>,
tag: UniIndex,
exclude: Option<UniIndex>,
rel_pos: AccessRelatedness
) -> Result<(), OutErr>
fn exec_and_visit( &mut self, this: &mut TreeVisitor<'_>, tag: UniIndex, exclude: Option<UniIndex>, rel_pos: AccessRelatedness ) -> Result<(), OutErr>
Apply the function to the current tag, and push its children
to the stack of future tags to visit.
Auto Trait Implementations§
impl<NodeApp, ErrHandler> RefUnwindSafe for TreeVisitAux<NodeApp, ErrHandler>where ErrHandler: RefUnwindSafe, NodeApp: RefUnwindSafe,
impl<NodeApp, ErrHandler> Send for TreeVisitAux<NodeApp, ErrHandler>where ErrHandler: Send, NodeApp: Send,
impl<NodeApp, ErrHandler> Sync for TreeVisitAux<NodeApp, ErrHandler>where ErrHandler: Sync, NodeApp: Sync,
impl<NodeApp, ErrHandler> Unpin for TreeVisitAux<NodeApp, ErrHandler>where ErrHandler: Unpin, NodeApp: Unpin,
impl<NodeApp, ErrHandler> UnwindSafe for TreeVisitAux<NodeApp, ErrHandler>where ErrHandler: UnwindSafe, NodeApp: UnwindSafe,
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
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.