Skip to main content

MmioOperand

Trait MmioOperand 

Source
pub trait MmioOperand:
    MmioOperand
    + AtomicOperand
    + MmioOperand
    + TryFrom<usize, Error: Debug> {
    // Required methods
    fn load<H: VmoMemoryHandler + ?Sized>(
        handler: &H,
        op: VmoOpHelper<'_, Self>,
    ) -> Self;
    fn store<H: VmoMemoryHandler + ?Sized>(
        handler: &H,
        op: VmoOpHelper<'_, Self>,
        value: Self,
    );
}
Expand description

Trait for MMIO operand types that can be loaded or stored via a test handler.

This trait is local version of mmio::MmioOperand with extensions specifically tailored for testing.

Required Methods§

Source

fn load<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, ) -> Self

Dispatches a load operation of this operand type to handler.

Source

fn store<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, value: Self, )

Dispatches a store operation of this operand type to handler.

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementations on Foreign Types§

Source§

impl MmioOperand for u8

Source§

fn load<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, ) -> Self

Source§

fn store<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, value: Self, )

Source§

impl MmioOperand for u16

Source§

fn load<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, ) -> Self

Source§

fn store<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, value: Self, )

Source§

impl MmioOperand for u32

Source§

fn load<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, ) -> Self

Source§

fn store<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, value: Self, )

Source§

impl MmioOperand for u64

Source§

fn load<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, ) -> Self

Source§

fn store<H: VmoMemoryHandler + ?Sized>( handler: &H, op: VmoOpHelper<'_, Self>, value: Self, )

Implementors§