Trait serde::de::IntoDeserializer
[−]
[src]
pub trait IntoDeserializer<'de, E: Error = Error> { type Deserializer: Deserializer<'de, Error = E>; fn into_deserializer(self) -> Self::Deserializer; }
Converts an existing value into a Deserializer
from which other values can
be deserialized.
#[macro_use] extern crate serde_derive; extern crate serde; use std::str::FromStr; use serde::de::{value, Deserialize, IntoDeserializer}; #[derive(Deserialize)] enum Setting { On, Off, } impl FromStr for Setting { type Err = value::Error; fn from_str(s: &str) -> Result<Self, Self::Err> { Self::deserialize(s.into_deserializer()) } }
Associated Types
type Deserializer: Deserializer<'de, Error = E>
The type of the deserializer being converted into.
Required Methods
fn into_deserializer(self) -> Self::Deserializer
Convert this value into a deserializer.
Implementors
impl<'de, E> IntoDeserializer<'de, E> for () where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for bool where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for i8 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for i16 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for i32 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for i64 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for isize where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for u8 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for u16 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for u64 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for usize where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for f32 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for f64 where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for char where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for u32 where
E: Error,impl<'de, 'a, E> IntoDeserializer<'de, E> for &'a str where
E: Error,impl<'de, E> IntoDeserializer<'de, E> for String where
E: Error,impl<'de, 'a, E> IntoDeserializer<'de, E> for Cow<'a, str> where
E: Error,impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T> where
T: IntoDeserializer<'de, E>,
E: Error,impl<'de, T, E> IntoDeserializer<'de, E> for BTreeSet<T> where
T: IntoDeserializer<'de, E> + Eq + Ord,
E: Error,impl<'de, T, E> IntoDeserializer<'de, E> for HashSet<T> where
T: IntoDeserializer<'de, E> + Eq + Hash,
E: Error,impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V> where
K: IntoDeserializer<'de, E> + Eq + Ord,
V: IntoDeserializer<'de, E>,
E: Error,impl<'de, K, V, E> IntoDeserializer<'de, E> for HashMap<K, V> where
K: IntoDeserializer<'de, E> + Eq + Hash,
V: IntoDeserializer<'de, E>,
E: Error,