Module http_serde_ext::header_map_generic
source · Expand description
Serialize
/Deserialize
for http::HeaderMap
use std::{cmp::Ord, collections::*, hash::Hash};
use http::HeaderMap;
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
struct MyStruct<T, U>
where
T: Serialize + for<'a> Deserialize<'a> + Hash + Ord,
U: Serialize + for<'a> Deserialize<'a>,
{
#[serde(with = "http_serde_ext::header_map_generic")]
base: HeaderMap<U>,
#[serde(with = "http_serde_ext::header_map_generic::option", default)]
option: Option<HeaderMap<U>>,
#[serde(with = "http_serde_ext::header_map_generic::result")]
result: Result<HeaderMap<U>, T>,
#[serde(with = "http_serde_ext::header_map_generic::vec")]
vec: Vec<HeaderMap<U>>,
#[serde(with = "http_serde_ext::header_map_generic::vec_deque")]
vec_deque: VecDeque<HeaderMap<U>>,
#[serde(with = "http_serde_ext::header_map_generic::linked_list")]
linked_list: LinkedList<HeaderMap<U>>,
#[serde(with = "http_serde_ext::header_map_generic::hash_map")]
hash_map: HashMap<T, HeaderMap<U>>,
#[serde(with = "http_serde_ext::header_map_generic::btree_map")]
btree_map: BTreeMap<T, HeaderMap<U>>,
}