Trait nu_protocol::debugger::debugger_trait::Debugger
source · pub trait Debugger: Send + Debug {
// Provided methods
fn activate(&mut self) { ... }
fn deactivate(&mut self) { ... }
fn enter_block(&mut self, engine_state: &EngineState, block: &Block) { ... }
fn leave_block(&mut self, engine_state: &EngineState, block: &Block) { ... }
fn enter_element(
&mut self,
engine_state: &EngineState,
pipeline_element: &PipelineElement
) { ... }
fn leave_element(
&mut self,
engine_state: &EngineState,
element: &PipelineElement,
result: &Result<PipelineData, ShellError>
) { ... }
fn report(
&self,
engine_state: &EngineState,
debugger_span: Span
) -> Result<Value, ShellError> { ... }
}
Expand description
Debugger trait that every debugger needs to implement.
By default, its methods are empty. Not every Debugger needs to implement all of them.
Provided Methods§
sourcefn activate(&mut self)
fn activate(&mut self)
Called by EngineState::activate_debugger().
Intended for initializing the debugger.
sourcefn deactivate(&mut self)
fn deactivate(&mut self)
Called by EngineState::deactivate_debugger().
Intended for wrapping up the debugger after a debugging session before returning back to normal evaluation without debugging.
sourcefn enter_block(&mut self, engine_state: &EngineState, block: &Block)
fn enter_block(&mut self, engine_state: &EngineState, block: &Block)
Called when the evaluator enters a block
sourcefn leave_block(&mut self, engine_state: &EngineState, block: &Block)
fn leave_block(&mut self, engine_state: &EngineState, block: &Block)
Called when the evaluator leaves a block
sourcefn enter_element(
&mut self,
engine_state: &EngineState,
pipeline_element: &PipelineElement
)
fn enter_element( &mut self, engine_state: &EngineState, pipeline_element: &PipelineElement )
Called when the evaluator enters a pipeline element
sourcefn leave_element(
&mut self,
engine_state: &EngineState,
element: &PipelineElement,
result: &Result<PipelineData, ShellError>
)
fn leave_element( &mut self, engine_state: &EngineState, element: &PipelineElement, result: &Result<PipelineData, ShellError> )
Called when the evaluator leaves a pipeline element
sourcefn report(
&self,
engine_state: &EngineState,
debugger_span: Span
) -> Result<Value, ShellError>
fn report( &self, engine_state: &EngineState, debugger_span: Span ) -> Result<Value, ShellError>
Create a final report as a Value
Intended to be called after deactivate()