edm_axum/
lib.rs

1#![cfg_attr(docsrs, feature(doc_auto_cfg))]
2#![doc = include_str!("../README.md")]
3#![allow(async_fn_in_trait)]
4#![forbid(unsafe_code)]
5
6mod application;
7mod channel;
8mod controller;
9mod endpoint;
10mod middleware;
11mod request;
12mod response;
13
14pub mod prelude;
15
16pub use controller::DefaultController;
17
18use crate::application::axum_cluster::AxumCluster;
19use crate::request::axum_request::AxumExtractor;
20use crate::response::axum_response::{AxumRejection, AxumResponse};
21use edm_core::response::StatusCode;
22
23pub use channel::axum_channel::MessageChannel;
24
25/// HTTP server cluster for `axum`.
26pub type Cluster = AxumCluster;
27
28/// A specialized request extractor for `axum`.
29pub type Request = AxumExtractor<axum::http::Request<axum::body::Body>>;
30
31/// A specialized response for `axum`.
32pub type Response = edm_core::response::Response<StatusCode>;
33
34/// A specialized `Result` type for `axum`.
35pub type Result<T = AxumResponse<StatusCode>> = std::result::Result<T, AxumRejection>;