Trait ppv_lite86::Machine

source ·
pub trait Machine: Sized + Copy {
    type u32x4: u32x4<Self>;
    type u64x2: u64x2<Self>;
    type u128x1: u128x1<Self>;
    type u32x4x2: u32x4x2<Self>;
    type u64x2x2: u64x2x2<Self>;
    type u64x4: u64x4<Self>;
    type u128x2: u128x2<Self>;
    type u32x4x4: u32x4x4<Self>;
    type u64x2x4: u64x2x4<Self>;
    type u128x4: u128x4<Self>;

    // Required method
    unsafe fn instance() -> Self;

    // Provided methods
    fn unpack<S, V: Store<S>>(self, s: S) -> V { ... }
    fn vec<V, A>(self, a: A) -> V
       where V: MultiLane<A> { ... }
    fn read_le<V>(self, input: &[u8]) -> V
       where V: StoreBytes { ... }
    fn read_be<V>(self, input: &[u8]) -> V
       where V: StoreBytes { ... }
}

Required Associated Types§

source

type u32x4: u32x4<Self>

source

type u64x2: u64x2<Self>

source

type u128x1: u128x1<Self>

source

type u32x4x2: u32x4x2<Self>

source

type u64x2x2: u64x2x2<Self>

source

type u64x4: u64x4<Self>

source

type u128x2: u128x2<Self>

source

type u32x4x4: u32x4x4<Self>

source

type u64x2x4: u64x2x4<Self>

source

type u128x4: u128x4<Self>

Required Methods§

source

unsafe fn instance() -> Self

Safety

Caller must ensure the type of Self is appropriate for the hardware of the execution environment.

Provided Methods§

source

fn unpack<S, V: Store<S>>(self, s: S) -> V

source

fn vec<V, A>(self, a: A) -> Vwhere V: MultiLane<A>,

source

fn read_le<V>(self, input: &[u8]) -> Vwhere V: StoreBytes,

source

fn read_be<V>(self, input: &[u8]) -> Vwhere V: StoreBytes,

Implementors§