#[non_exhaustive]pub enum DrainInsertion {
LruTail,
Mru,
}Expand description
Where commit-drain rehydrated pages are inserted into the LRU.
LruTail makes the just-drained pages the first eviction candidates
after commit; preserves any pre-transaction warm pages. The default,
per spec §“Drain insertion policy”.
Mru treats drained pages as recently touched. Useful when the
caller expects to read them again next transaction.
I36: #[non_exhaustive] so a third drain policy (e.g. a hint-based
split between recently-touched and cold) can land without breaking
callers. External match arms need a _ => … catchall.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Trait Implementations§
Source§impl Clone for DrainInsertion
impl Clone for DrainInsertion
Source§fn clone(&self) -> DrainInsertion
fn clone(&self) -> DrainInsertion
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for DrainInsertion
Source§impl Debug for DrainInsertion
impl Debug for DrainInsertion
impl Eq for DrainInsertion
Source§impl PartialEq for DrainInsertion
impl PartialEq for DrainInsertion
impl StructuralPartialEq for DrainInsertion
Auto Trait Implementations§
impl Freeze for DrainInsertion
impl RefUnwindSafe for DrainInsertion
impl Send for DrainInsertion
impl Sync for DrainInsertion
impl Unpin for DrainInsertion
impl UnsafeUnpin for DrainInsertion
impl UnwindSafe for DrainInsertion
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