Struct rmp_serde::decode::Deserializer
[−]
[src]
pub struct Deserializer<R> { /* fields omitted */ }
A Deserializer that reads bytes from a buffer.
Note
All instances of ErrorKind::Interrupted
are handled by this function and the underlying
operation is retried.
Methods
impl<'a> Deserializer<SliceReader<'a>>
[src]
fn from_slice(slice: &'a [u8]) -> Self
fn get_ref(&self) -> &[u8]
Gets a reference to the underlying reader in this decoder.
impl<R: Read> Deserializer<ReadReader<R>>
[src]
fn from_read(rd: R) -> Self
fn new(rd: R) -> Self
Constructs a new deserializer by consuming the given reader.
fn get_ref(&self) -> &R
Gets a reference to the underlying reader in this decoder.
fn get_mut(&mut self) -> &mut R
Gets a mutable reference to the underlying reader in this decoder.
fn into_inner(self) -> R
Consumes this decoder returning the underlying reader.
impl<R: AsRef<[u8]>> Deserializer<ReadReader<Cursor<R>>>
[src]
fn position(&self) -> u64
Returns the current position of this deserializer, i.e. how many bytes were read.
impl<R: Read> Deserializer<R>
[src]
fn set_max_depth(&mut self, depth: usize)
Changes the maximum nesting depth that is allowed
Trait Implementations
impl<'a, R: Read> Deserializer for &'a mut Deserializer<R>
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization. Read more
fn deserialize<V>(self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
Require the Deserializer
to figure out how to drive the visitor based on what data type is in the input. Read more
fn deserialize_option<V>(self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
Hint that the Deserialize
type is expecting an optional value. Read more
fn deserialize_enum<V>(self,
_name: &str,
_variants: &[&str],
visitor: V)
-> Result<V::Value, Error> where V: Visitor
_name: &str,
_variants: &[&str],
visitor: V)
-> Result<V::Value, Error> where V: Visitor
Hint that the Deserialize
type is expecting an enum value with a particular name and possible variants. Read more
fn deserialize_newtype_struct<V>(self,
_name: &'static str,
visitor: V)
-> Result<V::Value, Error> where V: Visitor
_name: &'static str,
visitor: V)
-> Result<V::Value, Error> where V: Visitor
Hint that the Deserialize
type is expecting a newtype struct with a particular name. Read more
fn deserialize_bool<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a bool
value.
fn deserialize_u8<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a u8
value.
fn deserialize_u16<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a u16
value.
fn deserialize_u32<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a u32
value.
fn deserialize_u64<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a u64
value.
fn deserialize_i8<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting an i8
value.
fn deserialize_i16<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting an i16
value.
fn deserialize_i32<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting an i32
value.
fn deserialize_i64<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a f32
value.
fn deserialize_f64<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a f64
value.
fn deserialize_char<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a char
value.
fn deserialize_str<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
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 more
fn deserialize_string<__V>(self,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a string value and would benefit from taking ownership of buffered data owned by the Deserializer
. Read more
fn deserialize_bytes<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
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 more
fn deserialize_byte_buf<__V>(self,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a byte array and would benefit from taking ownership of buffered data owned by the Deserializer
. Read more
fn deserialize_unit<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a unit value.
fn deserialize_unit_struct<__V>(self,
_: &'static str,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
_: &'static str,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a unit struct with a particular name. Read more
fn deserialize_seq<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a sequence of values.
fn deserialize_seq_fixed_size<__V>(self,
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a sequence of values and knows how many values there are without looking at the serialized data. Read more
fn deserialize_map<__V>(self, visitor: __V) -> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a map of key-value pairs.
fn deserialize_tuple_struct<__V>(self,
_: &'static str,
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
_: &'static str,
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a tuple struct with a particular name and number of fields. Read more
fn deserialize_struct<__V>(self,
_: &'static str,
_: &'static [&'static str],
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
_: &'static str,
_: &'static [&'static str],
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a struct with a particular name and fields. Read more
fn deserialize_struct_field<__V>(self,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting the name of a struct field. Read more
fn deserialize_tuple<__V>(self,
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
_: usize,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type is expecting a tuple value with a particular number of elements. Read more
fn deserialize_ignored_any<__V>(self,
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
visitor: __V)
-> Result<__V::Value, Self::Error> where __V: Visitor
Hint that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more