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§
Sourcetype UpgradeResult: DerefMut<Target = Self::Target>
type UpgradeResult: DerefMut<Target = Self::Target>
Self::upgrade
return type.
Sourcetype UpgradeToDowngradableResult: DowngradableWriteGuard<DowngradeToUpgradableResult = Self, Target = Self::Target>
type UpgradeToDowngradableResult: DowngradableWriteGuard<DowngradeToUpgradableResult = Self, Target = Self::Target>
Self::upgrade_to_downgradable
return type.
Required Methods§
Sourcefn upgrade(self) -> Self::UpgradeResult
fn upgrade(self) -> Self::UpgradeResult
Generalizes
RwLockUpgradableReadGuard::upgrade
.
Sourcefn upgrade_to_downgradable(self) -> Self::UpgradeToDowngradableResult
fn upgrade_to_downgradable(self) -> Self::UpgradeToDowngradableResult
Self::upgrade
analogue, which return type can be downgraded.