pub trait DapAdapter: Debug + Send + 'static {
    // Required methods
    fn set_breakpoints(
        &self,
        source: &str,
        breakpoints: &ResolvedBreakpoints
    ) -> Result<()>;
    fn top_frame(&self) -> Result<Option<StackFrame>>;
    fn stack_trace(
        &self,
        args: StackTraceArguments
    ) -> Result<StackTraceResponseBody>;
    fn scopes(&self) -> Result<ScopesInfo>;
    fn variables(&self) -> Result<VariablesInfo>;
    fn inspect_variable(
        &self,
        path: VariablePath
    ) -> Result<InspectVariableInfo>;
    fn continue_(&self) -> Result<()>;
    fn step(&self, kind: StepKind) -> Result<()>;
    fn evaluate(&self, expr: &str) -> Result<EvaluateExprInfo>;
}
Expand description

The DapAdapter accepts DAP requests and updates the hooks in the running evaluator.

Required Methods§

source

fn set_breakpoints( &self, source: &str, breakpoints: &ResolvedBreakpoints ) -> Result<()>

Sets multiple breakpoints for a file (and clears existing ones).

See https://microsoft.github.io/debug-adapter-protocol/specification#Requests_SetBreakpoints

source

fn top_frame(&self) -> Result<Option<StackFrame>>

Gets the top stack frame, may be None if entered from native.

source

fn stack_trace( &self, args: StackTraceArguments ) -> Result<StackTraceResponseBody>

Gets a stacktrace from the current execution state.

See https://microsoft.github.io/debug-adapter-protocol/specification#Requests_StackTrace

source

fn scopes(&self) -> Result<ScopesInfo>

source

fn variables(&self) -> Result<VariablesInfo>

source

fn inspect_variable(&self, path: VariablePath) -> Result<InspectVariableInfo>

Gets all child variables for the given access path

See https://microsoft.github.io/debug-adapter-protocol/specification#Requests_Variables

source

fn continue_(&self) -> Result<()>

source

fn step(&self, kind: StepKind) -> Result<()>

source

fn evaluate(&self, expr: &str) -> Result<EvaluateExprInfo>

Evaluates in expression in the context of the top-most frame.

See https://microsoft.github.io/debug-adapter-protocol/specification#Requests_Evaluate

Implementors§