Skip to main content

Op

Trait Op 

Source
pub trait Op: Sync {
    type Output: Send;

    const LABEL: &str;
    const EFFECT: ResidencyEffect;

    // Required method
    fn execute<PM: PageMap + Sync>(
        &self,
        ctx: &FileContext<'_, PM>,
    ) -> Result<Self::Output>;

    // Provided method
    fn finish(&self) -> Result<()> { ... }
}

Required Associated Constants§

Required Associated Types§

Required Methods§

Source

fn execute<PM: PageMap + Sync>( &self, ctx: &FileContext<'_, PM>, ) -> Result<Self::Output>

Provided Methods§

Source

fn finish(&self) -> Result<()>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl Op for Evict

Source§

const LABEL: &str = "evicted"

Source§

const EFFECT: ResidencyEffect = ResidencyEffect::EvictAdvisory

Source§

type Output = ()

Source§

impl Op for Lock

Source§

const LABEL: &str = "locked"

Source§

const EFFECT: ResidencyEffect = ResidencyEffect::Populate

Source§

type Output = LockedFile

Source§

impl Op for Lockall

Source§

const LABEL: &str = "locked"

Source§

const EFFECT: ResidencyEffect = ResidencyEffect::Populate

Source§

type Output = LockedFile

Source§

impl Op for Query

Source§

const LABEL: &str = "resident"

Source§

const EFFECT: ResidencyEffect = ResidencyEffect::Preserve

Source§

type Output = ()

Source§

impl Op for Touch

Source§

const LABEL: &str = "touched"

Source§

const EFFECT: ResidencyEffect = ResidencyEffect::Populate

Source§

type Output = usize