pub enum RemoveRefResult {
Freed(PhysBlock<Released>),
NowExclusive {
remaining_cap: CapId,
},
StillPinned {
transient_refs: u32,
},
StillShared {
refcount: u32,
},
}Expand description
Result of removing one capability reference from a block.
Variants§
Freed(PhysBlock<Released>)
The block has no remaining owners and can return to the buddy.
NowExclusive
Exactly one owner remains.
StillPinned
No capability remains, but transient pins still keep the block alive.
Multiple owners still reference the block.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RemoveRefResult
impl RefUnwindSafe for RemoveRefResult
impl Send for RemoveRefResult
impl Sync for RemoveRefResult
impl Unpin for RemoveRefResult
impl UnsafeUnpin for RemoveRefResult
impl UnwindSafe for RemoveRefResult
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more