Trait lock_order::lock::RwLockFor
source · pub trait RwLockFor<L> {
type Data;
type ReadGuard<'l>: Deref<Target = Self::Data>
where Self: 'l;
type WriteGuard<'l>: DerefMut<Target = Self::Data>
where Self: 'l;
// Required methods
fn read_lock(&self) -> Self::ReadGuard<'_>;
fn write_lock(&self) -> Self::WriteGuard<'_>;
}
Expand description
Describes how to acquire reader and writer locks to the implementing type.
An implementation of RwLockFor<L>
for some Self
means that L
is a
valid lock level for T
, and defines how to access the state in Self
that
is under the lock indicated by L
in either read mode or write mode.
Required Associated Types§
sourcetype ReadGuard<'l>: Deref<Target = Self::Data>
where
Self: 'l
type ReadGuard<'l>: Deref<Target = Self::Data> where Self: 'l
A guard providing read access to the data.
sourcetype WriteGuard<'l>: DerefMut<Target = Self::Data>
where
Self: 'l
type WriteGuard<'l>: DerefMut<Target = Self::Data> where Self: 'l
A guard providing write access to the data.
Required Methods§
sourcefn read_lock(&self) -> Self::ReadGuard<'_>
fn read_lock(&self) -> Self::ReadGuard<'_>
Acquires a read lock on the data in Self
indicated by L
.
sourcefn write_lock(&self) -> Self::WriteGuard<'_>
fn write_lock(&self) -> Self::WriteGuard<'_>
Acquires a write lock on the data in Self
indicated by L
.
Object Safety§
This trait is not object safe.