1#![deny(clippy::pedantic)]
3#![allow(
4 clippy::missing_fields_in_debug,
5 clippy::missing_errors_doc,
6 clippy::must_use_candidate,
7 clippy::needless_pass_by_value
8)]
9
10pub mod body;
11pub mod error;
12pub mod header;
13mod map;
14mod serde;
15mod value;
16
17pub use self::error::Error;
18pub use self::map::HeaderMap;
19pub use self::value::HeaderValue;
20
21#[doc(hidden)]
22pub use self::map::Value;
23
24pub use http::header::HeaderName;
26pub use http::uri::{self, Uri};
27pub use http::{Method, StatusCode, Version};
28
29impl From<http::HeaderMap> for HeaderMap {
31 fn from(map: http::HeaderMap) -> HeaderMap {
32 let mut new_map = HeaderMap::with_capacity(map.capacity());
33 for (h, v) in &map {
34 new_map.append(h.clone(), HeaderValue::from(v));
35 }
36 new_map
37 }
38}
39
40#[doc(hidden)]
41pub mod compat {
42 pub use http::header::InvalidHeaderName;
43 pub use http::header::InvalidHeaderValue;
44 pub use http::method::InvalidMethod;
45 pub use http::status::InvalidStatusCode;
46 pub use http::uri::InvalidUri;
47}