Module path_and_query

Source
Expand description

Serialize/Deserialize for http::uri::PathAndQuery

use std::{cmp::Ord, collections::*, hash::Hash};

use http::uri::PathAndQuery;
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::path_and_query")]
    base: PathAndQuery,

    #[serde(with = "http_serde_ext::path_and_query::option", default)]
    option: Option<PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::result")]
    result: Result<PathAndQuery, U>,

    #[serde(with = "http_serde_ext::path_and_query::vec")]
    vec: Vec<PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::vec_deque")]
    vec_deque: VecDeque<PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::linked_list")]
    linked_list: LinkedList<PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::hash_map")]
    hash_map: HashMap<T, PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::hash_map_key")]
    hash_map_key: HashMap<PathAndQuery, U>,

    #[serde(with = "http_serde_ext::path_and_query::btree_map")]
    btree_map: BTreeMap<T, PathAndQuery>,

    #[serde(with = "http_serde_ext::path_and_query::hash_set")]
    hash_set: HashSet<PathAndQuery>,
}

Modules§

btree_map
hash_map
hash_map_key
hash_set
linked_list
option
result
vec
vec_deque

Functions§

deserialize
serialize