Trait Instance

Source
pub trait Instance {
    type Error: Debug;

    // Required method
    fn call(&mut self, id: usize, args: &[Value]) -> Result<u128, Self::Error>;

    // Provided methods
    fn read_memory(
        &mut self,
        _offset: u32,
        _len: u32,
    ) -> Result<Vec<u8>, Self::Error> { ... }
    fn write_memory(
        &mut self,
        _offset: u32,
        _len: u32,
        _buf: &[u8],
    ) -> Result<(), Self::Error> { ... }
}
Expand description

This trait represents an instance used by the loader.

Required Associated Types§

Source

type Error: Debug

The error type returned by this instance.

Required Methods§

Source

fn call(&mut self, id: usize, args: &[Value]) -> Result<u128, Self::Error>

Call a function by id with the given args.

Provided Methods§

Source

fn read_memory( &mut self, _offset: u32, _len: u32, ) -> Result<Vec<u8>, Self::Error>

Read memory at the given offset and length.

Source

fn write_memory( &mut self, _offset: u32, _len: u32, _buf: &[u8], ) -> Result<(), Self::Error>

Write memory at the given offset and length.

Implementors§