pub struct ValueGuard<'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 value.
Modifying the underlying value via this guard automatically propagates augmentation updates up the tree when it goes out of scope.
Trait Implementations§
Source§impl<'a, K: Debug, V: Debug, S: Debug, P> Debug for ValueGuard<'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 ValueGuard<'a, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S> + Debug,
Source§impl<K, V, S, P> Deref for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> Deref for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Source§impl<K, V, S, P> DerefMut for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> DerefMut for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Source§impl<K, V, S, P> Drop for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
impl<K, V, S, P> Drop for ValueGuard<'_, K, V, S, P>where
P: TreePolicy<K = K, V = V, S = S>,
Auto Trait Implementations§
impl<'a, K, V, S, P> !Send for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> !Sync for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> !UnwindSafe for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> Freeze for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> RefUnwindSafe for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> Unpin for ValueGuard<'a, K, V, S, P>
impl<'a, K, V, S, P> UnsafeUnpin for ValueGuard<'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