Struct miri::borrow_tracker::tree_borrows::tree::TreeVisitor
source · struct TreeVisitor<'tree> {
tag_mapping: &'tree UniKeyMap<BorTag>,
nodes: &'tree mut UniValMap<Node>,
perms: &'tree mut UniValMap<LocationState>,
}
Expand description
Internal contents of Tree
with the minimum of mutable access for
the purposes of the tree traversal functions: the permissions (perms
) can be
updated but not the tree structure (tag_mapping
and nodes
)
Fields§
§tag_mapping: &'tree UniKeyMap<BorTag>
§nodes: &'tree mut UniValMap<Node>
§perms: &'tree mut UniValMap<LocationState>
Implementations§
source§impl<'tree> TreeVisitor<'tree>
impl<'tree> TreeVisitor<'tree>
fn traverse_parents_this_children_others<InnErr, OutErr>( self, start: BorTag, f_propagate: impl Fn(NodeAppArgs<'_>) -> Result<ContinueTraversal, InnErr>, err_builder: impl Fn(ErrHandlerArgs<'_, InnErr>) -> OutErr ) -> Result<(), OutErr>
Auto Trait Implementations§
impl<'tree> RefUnwindSafe for TreeVisitor<'tree>
impl<'tree> !Send for TreeVisitor<'tree>
impl<'tree> !Sync for TreeVisitor<'tree>
impl<'tree> Unpin for TreeVisitor<'tree>
impl<'tree> !UnwindSafe for TreeVisitor<'tree>
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: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes