trillium_server_common/
lib.rs1#![forbid(unsafe_code)]
2#![deny(
3 clippy::dbg_macro,
4 missing_copy_implementations,
5 rustdoc::missing_crate_level_docs,
6 missing_debug_implementations,
7 missing_docs,
8 nonstandard_style,
9 unused_qualifications
10)]
11
12#[cfg(test)]
27#[doc = include_str!("../README.md")]
28mod readme {}
29
30pub use futures_lite::{AsyncRead, AsyncWrite, Stream};
31pub use trillium::{Info, Transport};
32pub use url::{self, Url};
33
34mod config;
35pub use config::Config;
36
37mod server;
38pub use server::Server;
39
40mod binding;
41pub use binding::Binding;
42
43mod client;
44pub use client::{ArcedConnector, ArcedQuicClientConfig, Connector, Destination, QuicClientConfig};
45
46mod acceptor;
47pub use acceptor::Acceptor;
48
49mod boxed_acceptor;
50#[doc(hidden)]
51pub use boxed_acceptor::{BoxedAcceptError, BoxedAcceptor};
52
53mod boxed_quic;
54#[doc(hidden)]
55pub use boxed_quic::BoxedQuicConfig;
56
57mod server_handle;
58pub use server_handle::{BoundInfo, ServerHandle};
59
60mod arc_handler;
61pub(crate) use arc_handler::ArcHandler;
62
63mod peer_ip;
64pub(crate) use peer_ip::unmap_ipv4;
65pub use swansong::Swansong;
66
67mod listener_config;
68pub use listener_config::{IntoListenAddr, ListenerConfig};
69
70#[cfg(reuseport)]
71mod reuse_port;
72#[cfg(reuseport)]
73pub use reuse_port::bind_reuse_port;
74
75mod runtime;
76#[doc(hidden)]
77pub use runtime::FanOut;
78pub use runtime::{DroppableFuture, Runtime, RuntimeTrait};
79
80mod quic;
81pub use quic::{
82 ArcedQuicEndpoint, BoxedBidiStream, BoxedRecvStream, BoxedSendStream, QuicConfig,
83 QuicConnection, QuicConnectionTrait, QuicEndpoint, QuicTransportBidi, QuicTransportReceive,
84 QuicTransportSend,
85};
86
87mod udp_transport;
88pub use udp_transport::UdpTransport;
89
90mod running_config;
91
92pub(crate) mod h2;
93pub mod h3;