Skip to main content

HostFrame

Trait HostFrame 

Source
pub trait HostFrame: Send {
    // Required methods
    fn get_instance(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<Resource<Instance>, Error>> + Send;
    fn get_func_index(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<u32, Error>> + Send;
    fn get_pc(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<u32, Error>> + Send;
    fn get_locals(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send;
    fn get_stack(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send;
    fn parent_frame(
        &mut self,
        self_: Resource<Frame>,
        d: Resource<Debuggee>,
    ) -> impl Future<Output = Result<Option<Resource<Frame>>, Error>> + Send;
    fn drop(
        &mut self,
        rep: Resource<Frame>,
    ) -> impl Future<Output = Result<()>> + Send;
}

Required Methods§

Source

fn get_instance( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Resource<Instance>, Error>> + Send

Instance of this frame.

Source

fn get_func_index( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<u32, Error>> + Send

Function index in this frame’s instance.

Source

fn get_pc( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<u32, Error>> + Send

Current PC in this frame’s instance.

Source

fn get_locals( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send

Wasm locals.

Source

fn get_stack( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send

Operand stack.

Source

fn parent_frame( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Option<Resource<Frame>>, Error>> + Send

parent frame (the one that called this frame), if any.

Source

fn drop( &mut self, rep: Resource<Frame>, ) -> impl Future<Output = Result<()>> + Send

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.

Implementations on Foreign Types§

Source§

impl HostFrame for ResourceTable

Source§

async fn get_instance( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<Resource<Instance>>

Source§

async fn get_func_index( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<u32>

Source§

async fn get_pc( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<u32>

Source§

async fn get_locals( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<Vec<Resource<WasmValue>>>

Source§

async fn get_stack( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<Vec<Resource<WasmValue>>>

Source§

async fn parent_frame( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> Result<Option<Resource<Frame>>>

Source§

async fn drop(&mut self, rep: Resource<Frame>) -> Result<()>

Source§

impl<_T: HostFrame + ?Sized + Send> HostFrame for &mut _T

Source§

fn get_instance( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Resource<Instance>, Error>> + Send

Instance of this frame.

Source§

fn get_func_index( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<u32, Error>> + Send

Function index in this frame’s instance.

Source§

fn get_pc( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<u32, Error>> + Send

Current PC in this frame’s instance.

Source§

fn get_locals( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send

Wasm locals.

Source§

fn get_stack( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<WasmValue>>, Error>> + Send

Operand stack.

Source§

fn parent_frame( &mut self, self_: Resource<Frame>, d: Resource<Debuggee>, ) -> impl Future<Output = Result<Option<Resource<Frame>>, Error>> + Send

parent frame (the one that called this frame), if any.

Source§

async fn drop(&mut self, rep: Resource<Frame>) -> Result<()>

Implementors§