DAP JSON-RPC client – communicates with debugpy over Content-Length framing.
Module Contents
Classes
DAPClient
|
Debug Adapter Protocol client using ShellNode for subprocess I/O. |
API
-
simvx.ide.dap.client.log
‘getLogger(…)’
-
class simvx.ide.dap.client.DAPClient(state: simvx.ide.state.State, env: dict[str, str] | None = None)[source]
Debug Adapter Protocol client using ShellNode for subprocess I/O.
Launches debugpy’s adapter process and exchanges DAP messages over
stdin/stdout with Content-Length framing (identical to LSP).
Initialization
-
start(python: str = 'python')[source]
Launch debugpy adapter and send initialize request.
-
stop()[source]
Terminate the debug session and adapter process.
-
launch(program: str, args: list[str] | None = None, cwd: str | None = None)[source]
Launch the target program under the debugger.
-
set_breakpoints(path: str, lines: list[int])[source]
Set breakpoints for a file (replaces all previous breakpoints in that file).
-
continue_execution(thread_id: int = 0)[source]
-
step_over(thread_id: int = 0)[source]
-
step_into(thread_id: int = 0)[source]
-
step_out(thread_id: int = 0)[source]
-
pause(thread_id: int = 0)[source]
-
get_threads(callback: collections.abc.Callable | None = None)[source]
-
get_stack_trace(thread_id: int, callback: collections.abc.Callable | None = None)[source]
-
get_scopes(frame_id: int, callback: collections.abc.Callable | None = None)[source]
-
get_variables(variables_ref: int, callback: collections.abc.Callable | None = None)[source]
-
evaluate(expression: str, frame_id: int, callback: collections.abc.Callable | None = None)[source]
-
configuration_done()[source]
Signal that all initial configuration (breakpoints etc.) has been sent.
-
property running: bool[source]
-
property initialized: bool[source]
-
property configured: bool[source]
-
process(dt: float)[source]
Tick the underlying ShellNode to poll I/O.