Trait erased_serde::Deserializer
[−]
[src]
pub trait Deserializer { fn erased_deserialize(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_bool(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_usize(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_u8(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_u16(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_u32(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_u64(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_isize(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_i8(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_i16(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_i32(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_i64(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_f32(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_f64(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_char(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_str(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_string(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_unit(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_option(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_seq(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_seq_fixed_size(
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_bytes(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_map(&mut self, _: &mut Visitor) -> Result<Out, Error>; fn erased_deserialize_unit_struct(
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_newtype_struct(
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_tuple_struct(
&mut self,
name: &'static str,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_struct(
&mut self,
name: &'static str,
fields: &'static [&'static str],
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_struct_field(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_tuple(
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>; fn erased_deserialize_enum(
&mut self,
name: &'static str,
variants: &'static [&'static str],
_: &mut EnumVisitor
) -> Result<Out, Error>; fn erased_deserialize_ignored_any(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>; }
Required Methods
fn erased_deserialize(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_bool(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_usize(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_u8(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_u16(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_u32(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_u64(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_isize(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_i8(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_i16(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_i32(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_i64(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_f32(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_f64(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_char(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_str(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_string(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_unit(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_option(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_seq(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_seq_fixed_size(
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_bytes(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_map(&mut self, _: &mut Visitor) -> Result<Out, Error>
fn erased_deserialize_unit_struct(
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_newtype_struct(
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
name: &'static str,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_tuple_struct(
&mut self,
name: &'static str,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
name: &'static str,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_struct(
&mut self,
name: &'static str,
fields: &'static [&'static str],
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
name: &'static str,
fields: &'static [&'static str],
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_struct_field(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_tuple(
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
len: usize,
_: &mut Visitor
) -> Result<Out, Error>
fn erased_deserialize_enum(
&mut self,
name: &'static str,
variants: &'static [&'static str],
_: &mut EnumVisitor
) -> Result<Out, Error>
&mut self,
name: &'static str,
variants: &'static [&'static str],
_: &mut EnumVisitor
) -> Result<Out, Error>
fn erased_deserialize_ignored_any(
&mut self,
_: &mut Visitor
) -> Result<Out, Error>
&mut self,
_: &mut Visitor
) -> Result<Out, Error>
Trait Implementations
impl<'a> Deserializer for &'a mut Deserializer
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn deserialize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method walks a visitor through a value as it is being deserialized.
fn deserialize_bool<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a bool
value.
fn deserialize_usize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an usize
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u8
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u16
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u32
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u64
value.
fn deserialize_isize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an isize
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i8
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i16
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i32
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f32
value. A reasonable default is to forward to deserialize_f64
. Read more
fn deserialize_f64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f64
value.
fn deserialize_char<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a char
value.
fn deserialize_str<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a &str
value.
fn deserialize_string<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a String
value.
fn deserialize_unit<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an unit
value.
fn deserialize_option<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an Option
value. This allows deserializers that encode an optional value as a nullable value to convert the null value into a None
, and a regular value as Some(value)
. Read more
fn deserialize_seq<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a sequence value. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_seq_fixed_size<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a fixed size array. This allows deserializers to parse arrays that aren't tagged as arrays. Read more
fn deserialize_bytes<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a Vec<u8>
. This allows deserializers that provide a custom byte vector serialization to properly deserialize the type. Read more
fn deserialize_map<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a map of values. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_unit_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a unit struct. This allows deserializers to a unit struct that aren't tagged as a unit struct. Read more
fn deserialize_newtype_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a newtype struct. This allows deserializers to a newtype struct that aren't tagged as a newtype struct. A reasonable default is to simply deserialize the expected value directly. Read more
fn deserialize_tuple_struct<V>(
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple struct. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_struct<V>(
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a struct. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_struct_field<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting some sort of struct field name. This allows deserializers to choose between &str, usize, or &[u8] to properly deserialize a struct field. Read more
fn deserialize_tuple<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple value. This allows deserializers that provide a custom tuple serialization to properly deserialize the type. Read more
fn deserialize_enum<V>(
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
This method hints that the Deserialize
type is expecting an enum value. This allows deserializers that provide a custom enumeration serialization to properly deserialize the type. Read more
fn deserialize_ignored_any<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more
impl<'a> Deserializer for &'a mut Deserializer + Send
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn deserialize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method walks a visitor through a value as it is being deserialized.
fn deserialize_bool<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a bool
value.
fn deserialize_usize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an usize
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u8
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u16
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u32
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u64
value.
fn deserialize_isize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an isize
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i8
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i16
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i32
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f32
value. A reasonable default is to forward to deserialize_f64
. Read more
fn deserialize_f64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f64
value.
fn deserialize_char<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a char
value.
fn deserialize_str<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a &str
value.
fn deserialize_string<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a String
value.
fn deserialize_unit<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an unit
value.
fn deserialize_option<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an Option
value. This allows deserializers that encode an optional value as a nullable value to convert the null value into a None
, and a regular value as Some(value)
. Read more
fn deserialize_seq<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a sequence value. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_seq_fixed_size<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a fixed size array. This allows deserializers to parse arrays that aren't tagged as arrays. Read more
fn deserialize_bytes<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a Vec<u8>
. This allows deserializers that provide a custom byte vector serialization to properly deserialize the type. Read more
fn deserialize_map<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a map of values. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_unit_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a unit struct. This allows deserializers to a unit struct that aren't tagged as a unit struct. Read more
fn deserialize_newtype_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a newtype struct. This allows deserializers to a newtype struct that aren't tagged as a newtype struct. A reasonable default is to simply deserialize the expected value directly. Read more
fn deserialize_tuple_struct<V>(
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple struct. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_struct<V>(
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a struct. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_struct_field<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting some sort of struct field name. This allows deserializers to choose between &str, usize, or &[u8] to properly deserialize a struct field. Read more
fn deserialize_tuple<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple value. This allows deserializers that provide a custom tuple serialization to properly deserialize the type. Read more
fn deserialize_enum<V>(
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
This method hints that the Deserialize
type is expecting an enum value. This allows deserializers that provide a custom enumeration serialization to properly deserialize the type. Read more
fn deserialize_ignored_any<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more
impl<'a> Deserializer for &'a mut Deserializer + Sync
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn deserialize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method walks a visitor through a value as it is being deserialized.
fn deserialize_bool<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a bool
value.
fn deserialize_usize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an usize
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u8
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u16
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u32
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u64
value.
fn deserialize_isize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an isize
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i8
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i16
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i32
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f32
value. A reasonable default is to forward to deserialize_f64
. Read more
fn deserialize_f64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f64
value.
fn deserialize_char<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a char
value.
fn deserialize_str<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a &str
value.
fn deserialize_string<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a String
value.
fn deserialize_unit<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an unit
value.
fn deserialize_option<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an Option
value. This allows deserializers that encode an optional value as a nullable value to convert the null value into a None
, and a regular value as Some(value)
. Read more
fn deserialize_seq<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a sequence value. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_seq_fixed_size<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a fixed size array. This allows deserializers to parse arrays that aren't tagged as arrays. Read more
fn deserialize_bytes<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a Vec<u8>
. This allows deserializers that provide a custom byte vector serialization to properly deserialize the type. Read more
fn deserialize_map<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a map of values. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_unit_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a unit struct. This allows deserializers to a unit struct that aren't tagged as a unit struct. Read more
fn deserialize_newtype_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a newtype struct. This allows deserializers to a newtype struct that aren't tagged as a newtype struct. A reasonable default is to simply deserialize the expected value directly. Read more
fn deserialize_tuple_struct<V>(
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple struct. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_struct<V>(
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a struct. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_struct_field<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting some sort of struct field name. This allows deserializers to choose between &str, usize, or &[u8] to properly deserialize a struct field. Read more
fn deserialize_tuple<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple value. This allows deserializers that provide a custom tuple serialization to properly deserialize the type. Read more
fn deserialize_enum<V>(
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
This method hints that the Deserialize
type is expecting an enum value. This allows deserializers that provide a custom enumeration serialization to properly deserialize the type. Read more
fn deserialize_ignored_any<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more
impl<'a> Deserializer for &'a mut Deserializer + Send + Sync
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn deserialize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method walks a visitor through a value as it is being deserialized.
fn deserialize_bool<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a bool
value.
fn deserialize_usize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an usize
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u8
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u16
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u32
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an u64
value.
fn deserialize_isize<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an isize
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i8<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i8
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i16<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i16
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i32
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f32
value. A reasonable default is to forward to deserialize_f64
. Read more
fn deserialize_f64<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a f64
value.
fn deserialize_char<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a char
value.
fn deserialize_str<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a &str
value.
fn deserialize_string<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a String
value.
fn deserialize_unit<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an unit
value.
fn deserialize_option<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting an Option
value. This allows deserializers that encode an optional value as a nullable value to convert the null value into a None
, and a regular value as Some(value)
. Read more
fn deserialize_seq<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a sequence value. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_seq_fixed_size<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a fixed size array. This allows deserializers to parse arrays that aren't tagged as arrays. Read more
fn deserialize_bytes<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a Vec<u8>
. This allows deserializers that provide a custom byte vector serialization to properly deserialize the type. Read more
fn deserialize_map<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting a map of values. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_unit_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a unit struct. This allows deserializers to a unit struct that aren't tagged as a unit struct. Read more
fn deserialize_newtype_struct<V>(
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a newtype struct. This allows deserializers to a newtype struct that aren't tagged as a newtype struct. A reasonable default is to simply deserialize the expected value directly. Read more
fn deserialize_tuple_struct<V>(
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple struct. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_struct<V>(
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a struct. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_struct_field<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type is expecting some sort of struct field name. This allows deserializers to choose between &str, usize, or &[u8] to properly deserialize a struct field. Read more
fn deserialize_tuple<V>(
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
&mut self,
len: usize,
visitor: V
) -> Result<V::Value, Error> where
V: Visitor,
This method hints that the Deserialize
type is expecting a tuple value. This allows deserializers that provide a custom tuple serialization to properly deserialize the type. Read more
fn deserialize_enum<V>(
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
&mut self,
name: &'static str,
variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error> where
V: EnumVisitor,
This method hints that the Deserialize
type is expecting an enum value. This allows deserializers that provide a custom enumeration serialization to properly deserialize the type. Read more
fn deserialize_ignored_any<V>(&mut self, visitor: V) -> Result<V::Value, Error> where
V: Visitor,
V: Visitor,
This method hints that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more
Implementors
impl<T: ?Sized> Deserializer for T where
T: Deserializer,