1pub mod adapters;
2pub mod client;
3pub mod debugger_settings;
4pub mod inline_value;
5pub mod proto_conversions;
6mod registry;
7pub mod transport;
8
9use std::net::Ipv4Addr;
10
11pub use dap_types::*;
12pub use registry::{DapLocator, DapRegistry};
13pub use task::DebugRequest;
14
15pub type ScopeId = u64;
16pub type VariableReference = u64;
17pub type StackFrameId = u64;
18
19#[cfg(any(test, feature = "test-support"))]
20pub use adapters::FakeAdapter;
21use task::TcpArgumentsTemplate;
22
23pub async fn configure_tcp_connection(
24 tcp_connection: TcpArgumentsTemplate,
25) -> anyhow::Result<(Ipv4Addr, u16, Option<u64>)> {
26 let host = tcp_connection.host();
27 let timeout = tcp_connection.timeout;
28
29 let port = if let Some(port) = tcp_connection.port {
30 port
31 } else {
32 transport::TcpTransport::port(&tcp_connection).await?
33 };
34
35 Ok((host, port, timeout))
36}