pub trait SocketTaps<LOC>:
Clone
+ Debug
+ Send
+ Sync {
type TcpSock: AsFd;
type UdpSock: AsFd;
type TlsSock: AsFd;
// Required methods
fn new_tcp_socket(
resolver: Arc<ResolveConfEntry>,
timeout: Duration,
) -> CDnsResult<Box<NetworkTapType<LOC>>>;
fn new_udp_socket(
resolver: Arc<ResolveConfEntry>,
timeout: Duration,
) -> CDnsResult<Box<NetworkTapType<LOC>>>;
fn new_tls_socket(
resolver: Arc<ResolveConfEntry>,
timeout: Duration,
) -> CDnsResult<Box<NetworkTapType<LOC>>>;
}
Required Associated Types§
Required Methods§
fn new_tcp_socket( resolver: Arc<ResolveConfEntry>, timeout: Duration, ) -> CDnsResult<Box<NetworkTapType<LOC>>>
fn new_udp_socket( resolver: Arc<ResolveConfEntry>, timeout: Duration, ) -> CDnsResult<Box<NetworkTapType<LOC>>>
fn new_tls_socket( resolver: Arc<ResolveConfEntry>, timeout: Duration, ) -> CDnsResult<Box<NetworkTapType<LOC>>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.