Trait serde::de::Visitor [] [src]

pub trait Visitor {
    type Value: Deserialize;
    fn visit_bool<E>(&mut self, _v: bool) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_isize<E>(&mut self, v: isize) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_i8<E>(&mut self, v: i8) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_i16<E>(&mut self, v: i16) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_i32<E>(&mut self, v: i32) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_i64<E>(&mut self, _v: i64) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_usize<E>(&mut self, v: usize) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_u8<E>(&mut self, v: u8) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_u16<E>(&mut self, v: u16) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_u32<E>(&mut self, v: u32) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_u64<E>(&mut self, _v: u64) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_f32<E>(&mut self, v: f32) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_f64<E>(&mut self, _v: f64) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_char<E>(&mut self, v: char) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_str<E>(&mut self, _v: &str) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_string<E>(&mut self, v: String) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_unit<E>(&mut self) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_unit_struct<E>(&mut self, _name: &'static str) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_none<E>(&mut self) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_some<D>(&mut self, _deserializer: &mut D) -> Result<Self::Value, D::Error> where D: Deserializer { ... }
    fn visit_newtype_struct<D>(&mut self, _deserializer: &mut D) -> Result<Self::Value, D::Error> where D: Deserializer { ... }
    fn visit_seq<V>(&mut self, _visitor: V) -> Result<Self::Value, V::Error> where V: SeqVisitor { ... }
    fn visit_map<V>(&mut self, _visitor: V) -> Result<Self::Value, V::Error> where V: MapVisitor { ... }
    fn visit_bytes<E>(&mut self, _v: &[u8]) -> Result<Self::Value, E> where E: Error { ... }
    fn visit_byte_buf<E>(&mut self, v: Vec<u8>) -> Result<Self::Value, E> where E: Error { ... }
}

This trait represents a visitor that walks through a deserializer.

Associated Types

type Value: Deserialize

The value produced by this visitor.

Provided Methods

fn visit_bool<E>(&mut self, _v: bool) -> Result<Self::Value, E> where E: Error

visit_bool deserializes a bool into a Value.

fn visit_isize<E>(&mut self, v: isize) -> Result<Self::Value, E> where E: Error

visit_isize deserializes a isize into a Value.

fn visit_i8<E>(&mut self, v: i8) -> Result<Self::Value, E> where E: Error

visit_i8 deserializes a i8 into a Value.

fn visit_i16<E>(&mut self, v: i16) -> Result<Self::Value, E> where E: Error

visit_i16 deserializes a i16 into a Value.

fn visit_i32<E>(&mut self, v: i32) -> Result<Self::Value, E> where E: Error

visit_i32 deserializes a i32 into a Value.

fn visit_i64<E>(&mut self, _v: i64) -> Result<Self::Value, E> where E: Error

visit_i64 deserializes a i64 into a Value.

fn visit_usize<E>(&mut self, v: usize) -> Result<Self::Value, E> where E: Error

visit_usize deserializes a usize into a Value.

fn visit_u8<E>(&mut self, v: u8) -> Result<Self::Value, E> where E: Error

visit_u8 deserializes a u8 into a Value.

fn visit_u16<E>(&mut self, v: u16) -> Result<Self::Value, E> where E: Error

visit_u16 deserializes a u16 into a Value.

fn visit_u32<E>(&mut self, v: u32) -> Result<Self::Value, E> where E: Error

visit_u32 deserializes a u32 into a Value.

fn visit_u64<E>(&mut self, _v: u64) -> Result<Self::Value, E> where E: Error

visit_u64 deserializes a u64 into a Value.

fn visit_f32<E>(&mut self, v: f32) -> Result<Self::Value, E> where E: Error

visit_f32 deserializes a f32 into a Value.

fn visit_f64<E>(&mut self, _v: f64) -> Result<Self::Value, E> where E: Error

visit_f64 deserializes a f64 into a Value.

fn visit_char<E>(&mut self, v: char) -> Result<Self::Value, E> where E: Error

visit_char deserializes a char into a Value.

fn visit_str<E>(&mut self, _v: &str) -> Result<Self::Value, E> where E: Error

visit_str deserializes a &str into a Value.

fn visit_string<E>(&mut self, v: String) -> Result<Self::Value, E> where E: Error

visit_string deserializes a String into a Value. This allows a deserializer to avoid a copy if it is deserializing a string from a String type. By default it passes a &str to the visit_str method.

fn visit_unit<E>(&mut self) -> Result<Self::Value, E> where E: Error

visit_unit deserializes a () into a Value.

fn visit_unit_struct<E>(&mut self, _name: &'static str) -> Result<Self::Value, E> where E: Error

visit_unit_struct deserializes a unit struct into a Value.

fn visit_none<E>(&mut self) -> Result<Self::Value, E> where E: Error

visit_none deserializes a none value into a Value.

fn visit_some<D>(&mut self, _deserializer: &mut D) -> Result<Self::Value, D::Error> where D: Deserializer

visit_some deserializes a value into a Value.

fn visit_newtype_struct<D>(&mut self, _deserializer: &mut D) -> Result<Self::Value, D::Error> where D: Deserializer

visit_newtype_struct deserializes a value into a Value.

fn visit_seq<V>(&mut self, _visitor: V) -> Result<Self::Value, V::Error> where V: SeqVisitor

visit_bool deserializes a SeqVisitor into a Value.

fn visit_map<V>(&mut self, _visitor: V) -> Result<Self::Value, V::Error> where V: MapVisitor

visit_map deserializes a MapVisitor into a Value.

fn visit_bytes<E>(&mut self, _v: &[u8]) -> Result<Self::Value, E> where E: Error

visit_bytes deserializes a &[u8] into a Value.

fn visit_byte_buf<E>(&mut self, v: Vec<u8>) -> Result<Self::Value, E> where E: Error

visit_byte_buf deserializes a Vec<u8> into a Value.

Implementors