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: Errorimpl<'de, K, V, E> IntoDeserializer<'de, E> for HashMap<K, V> where K: IntoDeserializer<'de, E> + Eq + Hash,
V: IntoDeserializer<'de, E>,
E: Error