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§
Sourcefn trace_state(&self)
fn trace_state(&self)
Trace VM state (for debugging)
Sourcefn debug_break(&self)
fn debug_break(&self)
Trigger a debug break
Sourcefn instruction_pointer(&self) -> usize
fn instruction_pointer(&self) -> usize
Get current instruction pointer
Sourcefn stack_size(&self) -> usize
fn stack_size(&self) -> usize
Get stack size
Sourcefn stack_top(&self) -> Option<ExternalValue>
fn stack_top(&self) -> Option<ExternalValue>
Get top of stack as ExternalValue (display only)
Sourcefn stack_values_vec(&self) -> Vec<ExternalValue>
fn stack_values_vec(&self) -> Vec<ExternalValue>
Get all stack values as ExternalValues (display only)
Sourcefn call_stack_depth(&self) -> usize
fn call_stack_depth(&self) -> usize
Get call stack depth
Sourcefn call_frames(&self) -> &[CallFrame]
fn call_frames(&self) -> &[CallFrame]
Get call frames (for debugging)
Sourcefn local_values_vec(&self) -> Vec<ExternalValue>
fn local_values_vec(&self) -> Vec<ExternalValue>
Get local variables as ExternalValues (display only)
Sourcefn module_binding_values(&self) -> Vec<ValueWord>
fn module_binding_values(&self) -> Vec<ValueWord>
Get module_binding variables (data-flow: values are stored back into VM)
Sourcefn set_module_binding(&mut self, index: usize, value: ValueWord)
fn set_module_binding(&mut self, index: usize, value: ValueWord)
Set a module_binding variable by index
Sourcefn set_trace_mode(&mut self, enabled: bool)
fn set_trace_mode(&mut self, enabled: bool)
Set trace mode
Sourcefn debugger_mut(&mut self) -> Option<&mut VMDebugger>
fn debugger_mut(&mut self) -> Option<&mut VMDebugger>
Get mutable reference to debugger
Sourcefn has_debugger(&self) -> bool
fn has_debugger(&self) -> bool
Check if debugger is enabled