mycelium_kernel::arch::mm

Trait Level

Source
pub trait Level {
    const NAME: &'static str;
    const SUBLEVELS: usize;
    const INDEX_SHIFT: usize = _;

    // Required method
    fn table_addr(v: VAddr) -> VAddr;

    // Provided method
    fn index_of(v: VAddr) -> usize { ... }
}

Required Associated Constants§

Source

const NAME: &'static str

Source

const SUBLEVELS: usize

Provided Associated Constants§

Required Methods§

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Level for Pd

Source§

const NAME: &'static str = "PD"

Source§

const SUBLEVELS: usize = 1usize

Source§

impl Level for Pdpt

Source§

const SUBLEVELS: usize = 2usize

Source§

const NAME: &'static str = "PDPT"

Source§

impl Level for Pml4

Source§

const SUBLEVELS: usize = 3usize

Source§

const NAME: &'static str = "PML4"

Source§

impl Level for Pt

Source§

const NAME: &'static str = "PT"

Source§

const SUBLEVELS: usize = 0usize