Skip to main content

JsonDeserialize

Trait JsonDeserialize 

Source
pub trait JsonDeserialize<'de>: Sized {
    // Required method
    fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>;
}
Expand description

Trait for types that can be deserialized from JSON

The lifetime parameter 'de represents the lifetime of the data being deserialized, which allows for zero-copy deserialization when possible.

Required Methods§

Source

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Deserialize a value from the given parser

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'de> JsonDeserialize<'de> for &'de str

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for Cow<'de, str>

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for bool

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for f32

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for f64

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for i8

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for i16

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for i32

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for i64

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for isize

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for u8

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for u16

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for u32

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for u64

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for ()

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de> JsonDeserialize<'de> for usize

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>
where Self: ParseInt,

Source§

impl<'de> JsonDeserialize<'de> for String

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, K, V> JsonDeserialize<'de> for BTreeMap<K, V>
where K: From<String> + Ord, V: JsonDeserialize<'de>,

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, K, V> JsonDeserialize<'de> for HashMap<K, V>
where K: From<String> + Eq + Hash, V: JsonDeserialize<'de>,

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0,)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>, T3: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2, T3)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>, T3: JsonDeserialize<'de>, T4: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2, T3, T4)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>, T3: JsonDeserialize<'de>, T4: JsonDeserialize<'de>, T5: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2, T3, T4, T5)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>, T3: JsonDeserialize<'de>, T4: JsonDeserialize<'de>, T5: JsonDeserialize<'de>, T6: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2, T3, T4, T5, T6)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T0: JsonDeserialize<'de>, T1: JsonDeserialize<'de>, T2: JsonDeserialize<'de>, T3: JsonDeserialize<'de>, T4: JsonDeserialize<'de>, T5: JsonDeserialize<'de>, T6: JsonDeserialize<'de>, T7: JsonDeserialize<'de>> JsonDeserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7)

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T: JsonDeserialize<'de>> JsonDeserialize<'de> for Option<T>

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T: JsonDeserialize<'de>> JsonDeserialize<'de> for Box<T>

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Source§

impl<'de, T: JsonDeserialize<'de>> JsonDeserialize<'de> for Vec<T>

Source§

fn json_deserialize(parser: &mut JsonParser<'de>) -> Result<Self>

Implementors§