Trait UpgradableReadGuard

Source
pub trait UpgradableReadGuard: Deref {
    type UpgradeResult: DerefMut<Target = Self::Target>;
    type UpgradeToDowngradableResult: DowngradableWriteGuard<DowngradeToUpgradableResult = Self, Target = Self::Target>;

    // Required methods
    fn upgrade(self) -> Self::UpgradeResult;
    fn upgrade_to_downgradable(self) -> Self::UpgradeToDowngradableResult;
}
Expand description

Provides an interface for upgrading upgradable read guards.

§Example

See the GuardedTarget docs for implementation examples.

Required Associated Types§

Source

type UpgradeResult: DerefMut<Target = Self::Target>

Self::upgrade return type.

Source

type UpgradeToDowngradableResult: DowngradableWriteGuard<DowngradeToUpgradableResult = Self, Target = Self::Target>

Required Methods§

Source

fn upgrade(self) -> Self::UpgradeResult

Source

fn upgrade_to_downgradable(self) -> Self::UpgradeToDowngradableResult

Self::upgrade analogue, which return type can be downgraded.

Implementations on Foreign Types§

Source§

impl<'a, T> UpgradableReadGuard for RwLockUpgradableReadGuard<'a, T>

Source§

impl<'a, T: ?Sized> UpgradableReadGuard for &'a mut T

Implementors§