Skip to main content

DebuggerIntegration

Trait DebuggerIntegration 

Source
pub trait DebuggerIntegration {
Show 14 methods // Required methods fn trace_state(&self); fn debug_break(&self); fn instruction_pointer(&self) -> usize; fn stack_size(&self) -> usize; fn stack_top(&self) -> Option<ExternalValue>; fn stack_values_vec(&self) -> Vec<ExternalValue>; fn call_stack_depth(&self) -> usize; fn call_frames(&self) -> &[CallFrame]; fn local_values_vec(&self) -> Vec<ExternalValue>; fn module_binding_values(&self) -> Vec<ValueWord>; fn set_module_binding(&mut self, index: usize, value: ValueWord); fn set_trace_mode(&mut self, enabled: bool); fn debugger_mut(&mut self) -> Option<&mut VMDebugger>; fn has_debugger(&self) -> bool;
}
Expand description

Debugger integration for VirtualMachine

Required Methods§

Source

fn trace_state(&self)

Trace VM state (for debugging)

Source

fn debug_break(&self)

Trigger a debug break

Source

fn instruction_pointer(&self) -> usize

Get current instruction pointer

Source

fn stack_size(&self) -> usize

Get stack size

Source

fn stack_top(&self) -> Option<ExternalValue>

Get top of stack as ExternalValue (display only)

Source

fn stack_values_vec(&self) -> Vec<ExternalValue>

Get all stack values as ExternalValues (display only)

Source

fn call_stack_depth(&self) -> usize

Get call stack depth

Source

fn call_frames(&self) -> &[CallFrame]

Get call frames (for debugging)

Source

fn local_values_vec(&self) -> Vec<ExternalValue>

Get local variables as ExternalValues (display only)

Source

fn module_binding_values(&self) -> Vec<ValueWord>

Get module_binding variables (data-flow: values are stored back into VM)

Source

fn set_module_binding(&mut self, index: usize, value: ValueWord)

Set a module_binding variable by index

Source

fn set_trace_mode(&mut self, enabled: bool)

Set trace mode

Source

fn debugger_mut(&mut self) -> Option<&mut VMDebugger>

Get mutable reference to debugger

Source

fn has_debugger(&self) -> bool

Check if debugger is enabled

Implementors§