Trait serde::de::VariantVisitor[][src]

pub trait VariantVisitor {
    type Error: Error;
    fn visit_variant<V>(&mut self) -> Result<V, Self::Error>
    where
        V: Deserialize
; fn visit_unit(&mut self) -> Result<(), Self::Error> { ... }
fn visit_newtype<T>(&mut self) -> Result<T, Self::Error>
    where
        T: Deserialize
, { ... }
fn visit_tuple<V>(
        &mut self,
        _len: usize,
        _visitor: V
    ) -> Result<V::Value, Self::Error>
    where
        V: Visitor
, { ... }
fn visit_struct<V>(
        &mut self,
        _fields: &'static [&'static str],
        _visitor: V
    ) -> Result<V::Value, Self::Error>
    where
        V: Visitor
, { ... } }

VariantVisitor is a visitor that is created by the Deserializer and passed to the Deserialize in order to deserialize a specific enum variant.

Associated Types

The error type that can be returned if some error occurs during deserialization.

Required Methods

visit_variant is called to identify which variant to deserialize.

Provided Methods

visit_unit is called when deserializing a variant with no values.

visit_newtype is called when deserializing a variant with a single value. By default this uses the visit_tuple method to deserialize the value.

visit_tuple is called when deserializing a tuple-like variant.

visit_struct is called when deserializing a struct-like variant.

Implementations on Foreign Types

impl<'a, T> VariantVisitor for &'a mut T where
    T: VariantVisitor
[src]

Implementors