rama_http/
lib.rs

1//! rama http services, layers and utilities
2//!
3//! # Rama
4//!
5//! Crate used by the end-user `rama` crate and `rama` crate authors alike.
6//!
7//! Learn more about `rama`:
8//!
9//! - Github: <https://github.com/plabayo/rama>
10//! - Book: <https://ramaproxy.org/book/>
11
12#![doc(
13    html_favicon_url = "https://raw.githubusercontent.com/plabayo/rama/main/docs/img/old_logo.png"
14)]
15#![doc(html_logo_url = "https://raw.githubusercontent.com/plabayo/rama/main/docs/img/old_logo.png")]
16#![cfg_attr(docsrs, feature(doc_auto_cfg, doc_cfg))]
17#![cfg_attr(test, allow(clippy::float_cmp))]
18#![cfg_attr(not(test), warn(clippy::print_stdout, clippy::dbg_macro))]
19
20#[doc(inline)]
21pub use ::rama_http_types::{
22    header, proto,
23    response::{self, IntoResponse, Response},
24    Body, BodyDataStream, BodyExtractExt, BodyLimit, HeaderMap, HeaderName, HeaderValue, Method,
25    Request, Scheme, StatusCode, Uri, Version,
26};
27
28pub mod headers;
29pub mod matcher;
30
31pub mod layer;
32pub mod service;
33
34pub mod io;
35
36pub mod utils;
37
38pub mod dep {
39    //! Dependencies for rama http modules.
40    //!
41    //! Exported for your convenience.
42
43    #[doc(inline)]
44    pub use ::rama_http_types::dep::{http, http_body, http_body_util, mime, mime_guess};
45}