pub struct ValueReadAccess<'a, T>where
T: 'a + ?Sized,{ /* private fields */ }Expand description
Read guard over a value, obtained from a lifetime or one of its handles.
Derefs to the value and releases the read claim on drop.
Implementations§
Source§impl<'a, T> ValueReadAccess<'a, T>where
T: ?Sized,
impl<'a, T> ValueReadAccess<'a, T>where
T: ?Sized,
Sourcepub unsafe fn new_raw(
data: &'a T,
lifetime: LifetimeState,
) -> ValueReadAccess<'a, T>
pub unsafe fn new_raw( data: &'a T, lifetime: LifetimeState, ) -> ValueReadAccess<'a, T>
Builds a guard from parts, without going through the state checks.
§Safety
The read claim on lifetime must already be acquired, since dropping
this guard releases one. data must be the value that lifetime
guards.
Source§impl<'a, T> ValueReadAccess<'a, T>where
T: ?Sized,
impl<'a, T> ValueReadAccess<'a, T>where
T: ?Sized,
Sourcepub fn remap<U>(
self,
f: impl FnOnce(&T) -> Option<&U>,
) -> Result<ValueReadAccess<'a, U>, ValueReadAccess<'a, T>>
pub fn remap<U>( self, f: impl FnOnce(&T) -> Option<&U>, ) -> Result<ValueReadAccess<'a, U>, ValueReadAccess<'a, T>>
Narrows the guard down to a part of the value, for example one field.
Gives the guard back unchanged when f returns None.
Trait Implementations§
Source§impl<T> Deref for ValueReadAccess<'_, T>where
T: ?Sized,
impl<T> Deref for ValueReadAccess<'_, T>where
T: ?Sized,
Source§impl<T> Drop for ValueReadAccess<'_, T>where
T: ?Sized,
impl<T> Drop for ValueReadAccess<'_, T>where
T: ?Sized,
Auto Trait Implementations§
impl<'a, T> Freeze for ValueReadAccess<'a, T>
impl<'a, T> RefUnwindSafe for ValueReadAccess<'a, T>
impl<'a, T> Send for ValueReadAccess<'a, T>
impl<'a, T> Sync for ValueReadAccess<'a, T>
impl<'a, T> Unpin for ValueReadAccess<'a, T>
impl<'a, T> UnsafeUnpin for ValueReadAccess<'a, T>
impl<'a, T> UnwindSafe for ValueReadAccess<'a, T>
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