#![forbid(unsafe_code)]
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
pub(crate) mod async_carrier;
pub mod connection;
pub mod quic;
pub mod stream_ref;
pub mod tls;
pub mod udp;
pub use connection::{Connection, ConnectionLifecycleExt, ConnectionSettings, RetryPolicy};
pub use quic::{
DEFAULT_CHUNK_SIZE as QUIC_DEFAULT_CHUNK_SIZE, Quic, QuicBidirectionalStream, QuicBinding,
QuicByteSink, QuicByteSource, QuicConnection, QuicIncomingConnection, QuicStream, TokioQuic,
};
pub use stream_ref::{
StreamRefProtocolDiagnostics, StreamRefProtocolMessageCounts, StreamRefQuicHandle,
StreamRefTcpBinding, StreamRefTcpHandle, serve_sink_ref_over_quic, serve_sink_ref_over_tcp,
serve_sink_ref_over_tcp_stream, serve_sink_ref_over_tcp_stream_with_diagnostics,
serve_sink_ref_over_tcp_with_diagnostics, serve_source_over_quic, serve_source_ref_over_quic,
serve_source_ref_over_tcp, serve_source_ref_over_tcp_stream,
serve_source_ref_over_tcp_stream_with_diagnostics, serve_source_ref_over_tcp_with_diagnostics,
sink_ref_over_quic, sink_ref_over_tcp, sink_ref_over_tcp_stream,
sink_ref_over_tcp_stream_with_diagnostics, sink_ref_over_tcp_with_diagnostics,
source_ref_over_quic, source_ref_over_tcp, source_ref_over_tcp_stream,
source_ref_over_tcp_stream_with_diagnostics, source_ref_over_tcp_with_diagnostics,
};
pub use tls::{
Tls, TlsBinding, TlsByteSink, TlsByteSource, TlsConnection, TlsIncomingConnection, TokioTls,
};
pub use udp::{
DEFAULT_MAX_DATAGRAM_SIZE, DEFAULT_RECEIVE_BUFFER, Datagram, TokioUdp, Udp, UdpBinding,
UdpConnection,
};
#[doc(hidden)]
pub use async_carrier::{
ShardedTokioTestConfig, sharded_tokio_carrier_connection_count, with_sharded_tokio_test_config,
};