Trait secp256k1_zkp::serde::de::IntoDeserializer[][src]

pub trait IntoDeserializer<'de, E = Error> where
    E: Error
{ type Deserializer: Deserializer<'de>; pub fn into_deserializer(self) -> Self::Deserializer; }

Converts an existing value into a Deserializer from which other values can be deserialized.

Lifetime

The 'de lifetime of this trait is the lifetime of data that may be borrowed from the resulting Deserializer. See the page Understanding deserializer lifetimes for a more detailed explanation of these lifetimes.

Example

use std::str::FromStr;
use serde::Deserialize;
use serde::de::{value, 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>[src]

The type of the deserializer being converted into.

Loading content...

Required methods

pub fn into_deserializer(self) -> Self::Deserializer[src]

Convert this value into a deserializer.

Loading content...

Implementations on Foreign Types

impl<'de, E> IntoDeserializer<'de, E> for i32 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for () where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for f64 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for i128 where
    E: Error
[src]

impl<'de, 'a, E> IntoDeserializer<'de, E> for &'a str where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for i16 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for u8 where
    E: Error
[src]

impl<'de, 'a, E> IntoDeserializer<'de, E> for &'a [u8] where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for u128 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for usize where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for isize where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for char where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for f32 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for bool where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for i64 where
    E: Error
[src]

impl<'de, 'a, E> IntoDeserializer<'de, E> for Cow<'a, str> where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for u16 where
    E: Error
[src]

impl<'de, T, S, E> IntoDeserializer<'de, E> for HashSet<T, S> where
    S: BuildHasher,
    E: Error,
    T: IntoDeserializer<'de, E> + Eq + Hash
[src]

type Deserializer = SeqDeserializer<<HashSet<T, S> as IntoIterator>::IntoIter, E>

impl<'de, E> IntoDeserializer<'de, E> for u32 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for u64 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for i8 where
    E: Error
[src]

impl<'de, E> IntoDeserializer<'de, E> for String where
    E: Error
[src]

impl<'de, T, E> IntoDeserializer<'de, E> for Vec<T, Global> where
    E: Error,
    T: IntoDeserializer<'de, E>, 
[src]

type Deserializer = SeqDeserializer<<Vec<T, Global> as IntoIterator>::IntoIter, E>

impl<'de, K, V, S, E> IntoDeserializer<'de, E> for HashMap<K, V, S> where
    S: BuildHasher,
    E: Error,
    K: IntoDeserializer<'de, E> + Eq + Hash,
    V: IntoDeserializer<'de, E>, 
[src]

type Deserializer = MapDeserializer<'de, <HashMap<K, V, S> as IntoIterator>::IntoIter, E>

impl<'de, K, V, E> IntoDeserializer<'de, E> for BTreeMap<K, V> where
    E: Error,
    K: IntoDeserializer<'de, E> + Eq + Ord,
    V: IntoDeserializer<'de, E>, 
[src]

type Deserializer = MapDeserializer<'de, <BTreeMap<K, V> as IntoIterator>::IntoIter, E>

impl<'de, T, E> IntoDeserializer<'de, E> for BTreeSet<T> where
    E: Error,
    T: IntoDeserializer<'de, E> + Eq + Ord
[src]

Loading content...

Implementors

Loading content...