pub struct WriteHandle<'a, V, Pred: RwLockPredicate<V>> { /* private fields */ }Expand description
Handle obtained for an exclusive write-lock from an RwLock.
Note that this handle does not contain a reference to the lock-protected object;
ownership of the object is obtained separately from RwLock::acquire_write.
This may be changed in the future.
Warning: The lock is NOT released automatically when the handle
is dropped. You must call release_write.
Verus does not check that lock is released.
Implementations§
Source§impl<'a, V, Pred: RwLockPredicate<V>> WriteHandle<'a, V, Pred>
impl<'a, V, Pred: RwLockPredicate<V>> WriteHandle<'a, V, Pred>
Sourcepub exec fn release_write(self, new_val: V)
pub exec fn release_write(self, new_val: V)
requires
self.rwlock().inv(new_val),Auto Trait Implementations§
impl<'a, V, Pred> Freeze for WriteHandle<'a, V, Pred>
impl<'a, V, Pred> !RefUnwindSafe for WriteHandle<'a, V, Pred>
impl<'a, V, Pred> Send for WriteHandle<'a, V, Pred>
impl<'a, V, Pred> Sync for WriteHandle<'a, V, Pred>
impl<'a, V, Pred> Unpin for WriteHandle<'a, V, Pred>
impl<'a, V, Pred> !UnwindSafe for WriteHandle<'a, V, Pred>
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
Source§impl<T, U> IntoSpecImpl<U> for Twhere
U: From<T>,
impl<T, U> IntoSpecImpl<U> for Twhere
U: From<T>,
Source§impl<T, VERUS_SPEC__A> TryFromSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: TryFrom<T>,
impl<T, VERUS_SPEC__A> TryFromSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: TryFrom<T>,
Source§exec fn obeys_try_from_spec() -> bool
exec fn obeys_try_from_spec() -> bool
Source§impl<T, VERUS_SPEC__A> TryIntoSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: TryInto<T>,
impl<T, VERUS_SPEC__A> TryIntoSpec<T> for VERUS_SPEC__Awhere
VERUS_SPEC__A: TryInto<T>,
Source§exec fn obeys_try_into_spec() -> bool
exec fn obeys_try_into_spec() -> bool
Source§impl<T, U> TryIntoSpecImpl<U> for Twhere
U: TryFrom<T>,
impl<T, U> TryIntoSpecImpl<U> for Twhere
U: TryFrom<T>,
Source§open spec fn obeys_try_into_spec() -> bool
open spec fn obeys_try_into_spec() -> bool
{ <U as TryFromSpec<Self>>::obeys_try_from_spec() }