pub trait Deserializer<'de>: Sealed {
Show 32 methods
    // Required methods
    fn erased_deserialize_any(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_bool(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_i8(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_i16(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_i32(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_i64(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_i128(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_u8(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_u16(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_u32(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_u64(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_u128(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_f32(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_f64(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_char(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_str(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_string(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_bytes(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_byte_buf(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_option(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_unit(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_unit_struct(
        &mut self,
        name: &'static str,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_newtype_struct(
        &mut self,
        name: &'static str,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_seq(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_tuple(
        &mut self,
        len: usize,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_tuple_struct(
        &mut self,
        name: &'static str,
        len: usize,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_map(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_struct(
        &mut self,
        name: &'static str,
        fields: &'static [&'static str],
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_identifier(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_enum(
        &mut self,
        name: &'static str,
        variants: &'static [&'static str],
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_deserialize_ignored_any(
        &mut self,
        visitor: &mut dyn Visitor<'de>,
    ) -> Result<Out, Error>;
    fn erased_is_human_readable(&self) -> bool;
}Expand description
An object-safe equivalent of Serde’s Deserializer trait.
Any implementation of Serde’s Deserializer can be converted to a
&dyn erased_serde::Deserializer or Box<dyn erased_serde::Deserializer>
trait object using erased_serde::Deserializer::erase.
use erased_serde::Deserializer;
use std::collections::BTreeMap as Map;
fn main() {
    static JSON: &'static [u8] = br#"{"A": 65, "B": 66}"#;
    static CBOR: &'static [u8] = &[162, 97, 65, 24, 65, 97, 66, 24, 66];
    // Construct some deserializers.
    let json = &mut serde_json::Deserializer::from_slice(JSON);
    let cbor = &mut serde_cbor::Deserializer::from_slice(CBOR);
    // The values in this map are boxed trait objects, which is not possible
    // with the normal serde::Deserializer because of object safety.
    let mut formats: Map<&str, Box<dyn Deserializer>> = Map::new();
    formats.insert("json", Box::new(<dyn Deserializer>::erase(json)));
    formats.insert("cbor", Box::new(<dyn Deserializer>::erase(cbor)));
    // Pick a Deserializer out of the formats map.
    let format = formats.get_mut("json").unwrap();
    let data: Map<String, usize> = erased_serde::deserialize(format).unwrap();
    println!("{}", data["A"] + data["B"]);
}This trait is sealed and can only be implemented via a
serde::Deserializer<'de> impl.
Required Methods§
fn erased_deserialize_any( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_bool( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_i8( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_i16( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_i32( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_i64( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_i128( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_u8( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_u16( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_u32( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_u64( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_u128( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_f32( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_f64( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_char( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_str( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_string( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_bytes( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_byte_buf( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_option( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_unit( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_unit_struct( &mut self, name: &'static str, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_newtype_struct( &mut self, name: &'static str, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_seq( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_tuple( &mut self, len: usize, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_tuple_struct( &mut self, name: &'static str, len: usize, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_map( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_struct( &mut self, name: &'static str, fields: &'static [&'static str], visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_identifier( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_enum( &mut self, name: &'static str, variants: &'static [&'static str], visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_deserialize_ignored_any( &mut self, visitor: &mut dyn Visitor<'de>, ) -> Result<Out, Error>
fn erased_is_human_readable(&self) -> bool
Implementations§
Source§impl<'de> dyn Deserializer<'de>
 
impl<'de> dyn Deserializer<'de>
Sourcepub fn erase<D>(deserializer: D) -> impl Deserializer<'de>where
    D: Deserializer<'de>,
 
pub fn erase<D>(deserializer: D) -> impl Deserializer<'de>where
    D: Deserializer<'de>,
Convert any Serde Deserializer to a trait object.
use erased_serde::Deserializer;
use std::collections::BTreeMap as Map;
fn main() {
    static JSON: &'static [u8] = br#"{"A": 65, "B": 66}"#;
    static CBOR: &'static [u8] = &[162, 97, 65, 24, 65, 97, 66, 24, 66];
    // Construct some deserializers.
    let json = &mut serde_json::Deserializer::from_slice(JSON);
    let cbor = &mut serde_cbor::Deserializer::from_slice(CBOR);
    // The values in this map are boxed trait objects, which is not possible
    // with the normal serde::Deserializer because of object safety.
    let mut formats: Map<&str, Box<dyn Deserializer>> = Map::new();
    formats.insert("json", Box::new(<dyn Deserializer>::erase(json)));
    formats.insert("cbor", Box::new(<dyn Deserializer>::erase(cbor)));
    // Pick a Deserializer out of the formats map.
    let format = formats.get_mut("json").unwrap();
    let data: Map<String, usize> = erased_serde::deserialize(format).unwrap();
    println!("{}", data["A"] + data["B"]);
}Trait Implementations§
Source§impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + '_)
 
impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + '_)
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Send + '_)
 
impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Send + '_)
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Send + Sync + '_)
 
impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Send + Sync + '_)
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Sync + '_)
 
impl<'de> Deserializer<'de> for &mut (dyn Deserializer<'de> + Sync + '_)
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + '_>
 
impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + '_>
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Send + '_>
 
impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Send + '_>
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Send + Sync + '_>
 
impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Send + Sync + '_>
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read moreSource§impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Sync + '_>
 
impl<'de> Deserializer<'de> for Box<dyn Deserializer<'de> + Sync + '_>
Source§type Error = Error
 
type Error = Error
The error type that can be returned if some error occurs during
deserialization.
Source§fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Require the 
Deserializer to figure out how to drive the visitor based
on what data type is in the input. Read moreSource§fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a bool value.Source§fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i8 value.Source§fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i16 value.Source§fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i32 value.Source§fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_i64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an i64 value.Source§fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u8<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u8 value.Source§fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u16<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u16 value.Source§fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u32 value.Source§fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_u64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a u64 value.Source§fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f32<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f32 value.Source§fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_f64<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a f64 value.Source§fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_char<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a char value.Source§fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_str<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_string<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_bytes<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_byte_buf<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
Deserializer. Read moreSource§fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an optional value. Read moreSource§fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit value.Source§fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_unit_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a unit struct with a
particular name.Source§fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_newtype_struct<V>(
    self,
    name: &'static str,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a newtype struct with a
particular name.Source§fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_seq<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values.Source§fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple<V>(self, len: usize, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.Source§fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_tuple_struct<V>(
    self,
    name: &'static str,
    len: usize,
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a tuple struct with a
particular name and number of fields.Source§fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_map<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a map of key-value pairs.Source§fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_struct<V>(
    self,
    name: &'static str,
    fields: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting a struct with a particular
name and fields.Source§fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_identifier<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting the name of a struct
field or the discriminant of an enum variant.Source§fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_enum<V>(
    self,
    name: &'static str,
    variants: &'static [&'static str],
    visitor: V,
) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type is expecting an enum value with a
particular name and possible variants.Source§fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
 
fn deserialize_ignored_any<V>(self, visitor: V) -> Result<V::Value, Error>where
    V: Visitor<'de>,
Hint that the 
Deserialize type needs to deserialize a value whose type
doesn’t matter because it is ignored. Read moreSource§fn is_human_readable(&self) -> bool
 
fn is_human_readable(&self) -> bool
Determine whether 
Deserialize implementations should expect to
deserialize their human-readable form. Read more