Skip to main content

Module client

Module client 

Source
Expand description

DAP client for communicating with debug adapters

This module handles the communication with DAP adapters like lldb-dap, including the initialization sequence and request/response handling.

§Architecture

The DapClient uses a background reader task to continuously read from the adapter’s stdout (or TCP socket). This ensures that events (stopped, output, etc.) are captured immediately rather than only during request/response cycles.

[DAP Adapter] --stdout/tcp--> [Reader Task] --events--> [event_tx channel]
                                           --responses-> [response channels]
[DapClient]   --stdin/tcp-->  [DAP Adapter]

§Transport Modes

  • Stdio: Standard input/output (default, used by lldb-dap, debugpy)
  • TCP: TCP socket connection (used by Delve)

Structs§

DapClient
DAP client for communicating with a debug adapter