pub struct NodeGuard<'a, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,{ /* private fields */ }Expand description
A guarded mutable reference to an augmented tree node.
Modifying the underlying value via this guard automatically propagates augmentation updates up the tree when it goes out of scope.
Implementations§
Trait Implementations§
Source§impl<K, V, S, P> AsMut<V> for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> AsMut<V> for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Source§impl<'a, K: Debug, V: Debug, S: Debug, P> Debug for NodeGuard<'a, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S> + Debug,
impl<'a, K: Debug, V: Debug, S: Debug, P> Debug for NodeGuard<'a, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S> + Debug,
Source§impl<K, V, S, P> Deref for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> Deref for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Source§impl<K, V, S, P> DerefMut for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> DerefMut for NodeGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Auto Trait Implementations§
impl<'a, K, V, S, P> !Send for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> !Sync for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> !UnwindSafe for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> Freeze for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> RefUnwindSafe for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> Unpin for NodeGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> UnsafeUnpin for NodeGuard<'a, K, V, S, P>
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