#![allow(clippy::unused_async)]
pub mod dns;
pub mod happy_eyeballs;
pub mod quic_core;
pub mod quic_native;
#[cfg(feature = "quic")]
pub mod quic {
pub type QuicConnection = super::quic_native::NativeQuicConnection;
pub type QuicConfig = super::quic_native::NativeQuicConnectionConfig;
pub type QuicError = super::quic_native::NativeQuicConnectionError;
pub type SendStream = super::quic_native::QuicStream;
pub type RecvStream = super::quic_native::QuicStream;
}
mod resolve;
pub mod sys;
pub mod tcp;
mod udp;
#[cfg(unix)]
pub mod unix;
pub mod websocket;
pub mod worker_channel;
pub use happy_eyeballs::{HappyEyeballsConfig, connect as happy_eyeballs_connect};
#[cfg(feature = "quic")]
pub use quic::{
QuicConfig, QuicConnection, QuicError, RecvStream as QuicRecvStream,
SendStream as QuicSendStream,
};
pub use quic_native::{
AckEvent, AckRange, CryptoLevel, FlowControlError, FlowCredit, KeyUpdateEvent,
NativeQuicConnection, NativeQuicConnectionConfig, NativeQuicConnectionError, PacketNumberSpace,
QuicConnectionState, QuicStream, QuicStreamError, QuicTlsError, QuicTlsMachine,
QuicTransportMachine, RttEstimator, SentPacketMeta, StreamDirection, StreamId, StreamRole,
StreamTable, StreamTableError, TransportError,
};
pub use resolve::{lookup_all, lookup_one};
#[cfg(target_os = "windows")]
pub use sys::windows::{NamedPipeClient, NamedPipeClientOptions};
pub use tcp::listener::{Incoming, TcpListener};
pub use tcp::socket::TcpSocket;
pub use tcp::split::{OwnedReadHalf, OwnedWriteHalf, ReadHalf, ReuniteError, WriteHalf};
pub use tcp::stream::TcpStream;
pub use tcp::stream::TcpStreamBuilder;
pub use udp::{RecvStream, SendSink, UdpSocket};
#[cfg(unix)]
pub use unix::{
Incoming as UnixIncoming, OwnedReadHalf as UnixOwnedReadHalf,
OwnedWriteHalf as UnixOwnedWriteHalf, ReadHalf as UnixReadHalf,
ReuniteError as UnixReuniteError, UnixListener, UnixStream, WriteHalf as UnixWriteHalf,
};
pub use websocket::{
ClientHandshake, CloseCode, Frame, FrameCodec, HandshakeError, Message, Opcode, Role as WsRole,
ServerHandshake, ServerWebSocket, WebSocket, WebSocketAcceptor, WebSocketConfig, WebSocketRead,
WebSocketWrite, WsAcceptError, WsConnectError, WsError, WsReuniteError, WsUrl, apply_mask,
};