pub trait HostDebuggee: Send {
// Required methods
fn all_modules(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Module>>>> + Send;
fn all_instances(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Instance>>>> + Send;
fn interrupt(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<()>> + Send;
fn single_step(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send;
fn continue_(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send;
fn exit_frames(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Frame>>>> + Send;
fn drop(
&mut self,
rep: Resource<Debuggee>,
) -> impl Future<Output = Result<()>> + Send;
}Required Methods§
Sourcefn all_modules(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Module>>>> + Send
fn all_modules( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Module>>>> + Send
List all modules that exist in the Store.
If invoked while already running, causes a trap.
Sourcefn all_instances(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Instance>>>> + Send
fn all_instances( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Instance>>>> + Send
List of all instances that exist in the Store.
If invoked while already running, causes a trap.
Sourcefn interrupt(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<()>> + Send
fn interrupt( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<()>> + Send
Force an interruption event in any running code.
Usable in paused or running states. If invoked in the paused state, the next execution will immediately yield an “interrupted” event.
Sourcefn single_step(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
fn single_step( &mut self, self_: Resource<Debuggee>, resumption: ResumptionValue, ) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
Single-step, returning a future that will yield an event when the single-step execution is complete.
The resumption value indicates any mutations to
perform to execution state as part of resuming:
for example, injecting a call to another function,
or throwing an exception, or forcing an early return
from the current function.
Usable in paused state; transitions to running state. Debuggee remains in running state until the returned future completes.
If invoked while already running, causes a trap.
Sourcefn continue_(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
fn continue_( &mut self, self_: Resource<Debuggee>, resumption: ResumptionValue, ) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
Continue execution, returning a future that will yield an event when the resumed execution is complete.
The resumption value indicates any mutations to
perform to execution state as part of resuming:
for example, injecting a call to another function,
or throwing an exception, or forcing an early return
from the current function.
Usable in paused state; transitions to running state. Debuggee remains in running state until the returned future completes.
If invoked while already running, causes a trap.
Sourcefn exit_frames(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Frame>>>> + Send
fn exit_frames( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Frame>>>> + Send
Get the current exit frames for each activation.
If invoked while already running, causes a trap.
fn drop( &mut self, rep: Resource<Debuggee>, ) -> 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 HostDebuggee for ResourceTable
impl HostDebuggee for ResourceTable
async fn all_modules( &mut self, debuggee: Resource<Debuggee>, ) -> Result<Vec<Resource<Module>>>
async fn all_instances( &mut self, debuggee: Resource<Debuggee>, ) -> Result<Vec<Resource<Instance>>>
async fn interrupt(&mut self, debuggee: Resource<Debuggee>) -> Result<()>
async fn single_step( &mut self, debuggee: Resource<Debuggee>, resumption: ResumptionValue, ) -> Result<Resource<EventFuture>>
async fn continue_( &mut self, debuggee: Resource<Debuggee>, resumption: ResumptionValue, ) -> Result<Resource<EventFuture>>
async fn exit_frames( &mut self, debuggee: Resource<Debuggee>, ) -> Result<Vec<Resource<Frame>>>
async fn drop(&mut self, debuggee: Resource<Debuggee>) -> Result<()>
Source§impl<_T: HostDebuggee + ?Sized + Send> HostDebuggee for &mut _T
impl<_T: HostDebuggee + ?Sized + Send> HostDebuggee for &mut _T
Source§fn all_modules(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Module>>>> + Send
fn all_modules( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Module>>>> + Send
List all modules that exist in the Store.
If invoked while already running, causes a trap.
Source§fn all_instances(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Instance>>>> + Send
fn all_instances( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Instance>>>> + Send
List of all instances that exist in the Store.
If invoked while already running, causes a trap.
Source§fn interrupt(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<()>> + Send
fn interrupt( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<()>> + Send
Force an interruption event in any running code.
Usable in paused or running states. If invoked in the paused state, the next execution will immediately yield an “interrupted” event.
Source§fn single_step(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
fn single_step( &mut self, self_: Resource<Debuggee>, resumption: ResumptionValue, ) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
Single-step, returning a future that will yield an event when the single-step execution is complete.
The resumption value indicates any mutations to
perform to execution state as part of resuming:
for example, injecting a call to another function,
or throwing an exception, or forcing an early return
from the current function.
Usable in paused state; transitions to running state. Debuggee remains in running state until the returned future completes.
If invoked while already running, causes a trap.
Source§fn continue_(
&mut self,
self_: Resource<Debuggee>,
resumption: ResumptionValue,
) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
fn continue_( &mut self, self_: Resource<Debuggee>, resumption: ResumptionValue, ) -> impl Future<Output = Result<Resource<EventFuture>>> + Send
Continue execution, returning a future that will yield an event when the resumed execution is complete.
The resumption value indicates any mutations to
perform to execution state as part of resuming:
for example, injecting a call to another function,
or throwing an exception, or forcing an early return
from the current function.
Usable in paused state; transitions to running state. Debuggee remains in running state until the returned future completes.
If invoked while already running, causes a trap.
Source§fn exit_frames(
&mut self,
self_: Resource<Debuggee>,
) -> impl Future<Output = Result<Vec<Resource<Frame>>>> + Send
fn exit_frames( &mut self, self_: Resource<Debuggee>, ) -> impl Future<Output = Result<Vec<Resource<Frame>>>> + Send
Get the current exit frames for each activation.
If invoked while already running, causes a trap.