pub struct TwoPointerCompactionStrategy { /* private fields */ }Expand description
Two-pointer compaction strategy
Implementations§
Trait Implementations§
Source§impl CompactionStrategy for TwoPointerCompactionStrategy
impl CompactionStrategy for TwoPointerCompactionStrategy
fn name(&self) -> &str
fn can_handle(&self, layout: &MemoryLayoutTracker) -> bool
fn estimate_benefit(&self, layout: &MemoryLayoutTracker) -> f64
fn execute( &mut self, layout: &mut MemoryLayoutTracker, ) -> Result<CompactionResult, DefragError>
fn get_statistics(&self) -> CompactionStats
Auto Trait Implementations§
impl Freeze for TwoPointerCompactionStrategy
impl RefUnwindSafe for TwoPointerCompactionStrategy
impl Send for TwoPointerCompactionStrategy
impl Sync for TwoPointerCompactionStrategy
impl Unpin for TwoPointerCompactionStrategy
impl UnsafeUnpin for TwoPointerCompactionStrategy
impl UnwindSafe for TwoPointerCompactionStrategy
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