Trait DeserializeWithContext

Source
pub trait DeserializeWithContext<'de, C>: Sized {
    // Required method
    fn deserialize_with_context<D>(
        deserializer: D,
        context: &'de C,
    ) -> Result<Self, D::Error>
       where D: Deserializer<'de>;
}
Expand description

Similar to Deserialize, but takes an extra context argument and threads it through all nested structures.

Required Methods§

Source

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

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, C> DeserializeWithContext<'de, C> for &'de str

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for bool
where bool: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for char
where char: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for i8
where i8: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for i16
where i16: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for i32
where i32: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for i64
where i64: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for i128
where i128: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for isize
where isize: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for u8
where u8: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for u16
where u16: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for u32
where u32: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for u64
where u64: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for u128
where u128: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for ()

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for usize
where usize: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for String
where String: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C> DeserializeWithContext<'de, C> for Decimal
where Decimal: Deserialize<'de>,

Source§

fn deserialize_with_context<D>( deserializer: D, _context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, K, V> DeserializeWithContext<'de, C> for BTreeMap<K, V>
where K: DeserializeWithContext<'de, C> + Ord, V: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1> DeserializeWithContext<'de, C> for (T0, T1)
where T0: DeserializeWithContext<'de, C>, T1: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2> DeserializeWithContext<'de, C> for (T0, T1, T2)
where T0: DeserializeWithContext<'de, C>, T1: DeserializeWithContext<'de, C>, T2: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3> DeserializeWithContext<'de, C> for (T0, T1, T2, T3)
where T0: DeserializeWithContext<'de, C>, T1: DeserializeWithContext<'de, C>, T2: DeserializeWithContext<'de, C>, T3: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3, T4> DeserializeWithContext<'de, C> for (T0, T1, T2, T3, T4)
where T0: DeserializeWithContext<'de, C>, T1: DeserializeWithContext<'de, C>, T2: DeserializeWithContext<'de, C>, T3: DeserializeWithContext<'de, C>, T4: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

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

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

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

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

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

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3, T4, T5, T6, T7, T8> DeserializeWithContext<'de, C> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> DeserializeWithContext<'de, C> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> DeserializeWithContext<'de, C> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> DeserializeWithContext<'de, C> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T> DeserializeWithContext<'de, C> for Option<T>
where T: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T> DeserializeWithContext<'de, C> for Arc<T>
where T: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Source§

impl<'de, C, T> DeserializeWithContext<'de, C> for Vec<T>
where T: DeserializeWithContext<'de, C>,

Source§

fn deserialize_with_context<D>( deserializer: D, context: &'de C, ) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Implementors§