mod server;
pub mod app;
#[cfg(any(feature = "basic-auth", feature = "jwt-auth"))]
pub mod auth;
#[cfg(feature = "config")]
pub mod config;
#[cfg(feature = "di")]
pub mod di;
pub mod error;
pub mod fs;
#[cfg(feature = "__fuzzing")]
#[doc(hidden)]
pub mod fuzzing;
pub mod headers;
pub mod http;
pub mod json;
pub mod limits;
#[cfg(feature = "middleware")]
pub mod middleware;
#[cfg(feature = "openapi")]
pub mod openapi;
#[cfg(feature = "rate-limiting")]
pub mod rate_limiting;
#[cfg(any(test, feature = "test"))]
pub mod test;
#[cfg(feature = "tls")]
pub mod tls;
#[cfg(feature = "tracing")]
pub mod tracing;
pub mod utils;
#[cfg(feature = "ws")]
pub mod ws;
pub use crate::app::App;
pub use crate::http::{
BoxBody, HttpBody, HttpRequest, HttpResponse, HttpResult, UnsyncBoxBody,
endpoints::args::{
byte_stream::ByteStream,
cancellation_token::CancellationToken,
client_ip::ClientIp,
file::File,
form::Form,
json::Json,
path::{NamedPath, Path},
query::Query,
},
};
#[cfg(feature = "config")]
pub use config::{Config, ConfigBuilder};
#[cfg(feature = "middleware")]
pub use http::HttpRequestMut;
pub use limits::Limit;
#[cfg(feature = "multipart")]
pub use crate::http::endpoints::args::multipart::Multipart;
pub mod routing {
pub use crate::app::router::{Route, RouteGroup};
}
#[doc(hidden)]
pub use async_stream as __async_stream;