Skip to main content

Crate soldb_debugger

Crate soldb_debugger 

Source
Expand description

Source-level debugging over an execution trace.

Given a soldb_core::TransactionTrace and the ETHDebug metadata for the contract it executed, this crate answers the questions a source-level debugger asks: which source span a step is at, which function contains a program counter, and which variables are live there with what values.

It is frontend-agnostic on purpose. variables_for_step is what backs both the CLI REPL’s vars/print commands and the DAP server’s variables view, so the terminal and the editor decode identically.

Variable values are only as good as the debug info: a location the backend did not capture decodes to DebugValueStatus::Unavailable, and a value whose declared type is not decodable is reported as DebugValueStatus::Raw rather than guessed at.

Structs§

DebugLocation
DebugSession
DebugStep
DebugValue
DebugVariable
SourceFunction
SourceParam
SourceSpan

Enums§

DebugValueStatus

Functions§

parse_source_functions
variables_for_step