#![forbid(unsafe_code)]
#![deny(
clippy::dbg_macro,
missing_copy_implementations,
rustdoc::missing_crate_level_docs,
missing_debug_implementations,
missing_docs,
nonstandard_style,
unused_qualifications
)]
#[cfg(test)]
#[doc = include_str!("../README.md")]
mod readme {}
pub use futures_lite::{AsyncRead, AsyncWrite, Stream};
pub use trillium::{Info, Transport};
pub use url::{self, Url};
mod config;
pub use config::Config;
mod server;
pub use server::Server;
mod binding;
pub use binding::Binding;
mod client;
pub use client::{ArcedConnector, ArcedQuicClientConfig, Connector, QuicClientConfig};
mod acceptor;
pub use acceptor::Acceptor;
mod boxed_acceptor;
#[doc(hidden)]
pub use boxed_acceptor::{BoxedAcceptError, BoxedAcceptor};
mod boxed_quic;
#[doc(hidden)]
pub use boxed_quic::BoxedQuicConfig;
mod server_handle;
pub use server_handle::{BoundInfo, ServerHandle};
mod arc_handler;
pub(crate) use arc_handler::ArcHandler;
pub use swansong::Swansong;
mod listener_config;
pub use listener_config::{IntoListenAddr, ListenerConfig};
#[cfg(reuseport)]
mod reuse_port;
#[cfg(reuseport)]
pub use reuse_port::bind_reuse_port;
mod runtime;
#[doc(hidden)]
pub use runtime::FanOut;
pub use runtime::{DroppableFuture, Runtime, RuntimeTrait};
mod quic;
pub use quic::{
ArcedQuicEndpoint, BoxedBidiStream, BoxedRecvStream, BoxedSendStream, QuicConfig,
QuicConnection, QuicConnectionTrait, QuicEndpoint, QuicTransportBidi, QuicTransportReceive,
QuicTransportSend,
};
mod udp_transport;
pub use udp_transport::UdpTransport;
mod running_config;
pub(crate) mod h2;
pub mod h3;