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