Trait async_google_apis_common::Deserialize[][src]

pub trait Deserialize<'de> {
    pub fn deserialize<D>(
        deserializer: D
    ) -> Result<Self, <D as Deserializer<'de>>::Error>
    where
        D: Deserializer<'de>
; }

A data structure that can be deserialized from any data format supported by Serde.

Serde provides Deserialize implementations for many Rust primitive and standard library types. The complete list is here. All of these can be deserialized using Serde out of the box.

Additionally, Serde provides a procedural macro called serde_derive to automatically generate Deserialize implementations for structs and enums in your program. See the derive section of the manual for how to use this.

In rare cases it may be necessary to implement Deserialize manually for some type in your program. See the Implementing Deserialize section of the manual for more about this.

Third-party crates may provide Deserialize implementations for types that they expose. For example the linked-hash-map crate provides a LinkedHashMap<K, V> type that is deserializable by Serde because the crate provides an implementation of Deserialize for it.

Lifetime

The 'de lifetime of this trait is the lifetime of data that may be borrowed by Self when deserialized. See the page Understanding deserializer lifetimes for a more detailed explanation of these lifetimes.

Required methods

pub fn deserialize<D>(
    deserializer: D
) -> Result<Self, <D as Deserializer<'de>>::Error> where
    D: Deserializer<'de>, 
[src]

Deserialize this value from the given Serde deserializer.

See the Implementing Deserialize section of the manual for more information about how to implement this method.

Loading content...

Implementations on Foreign Types

impl<'de, T> Deserialize<'de> for [T; 5] where
    T: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 3] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for Box<CStr, Global>[src]

impl<'de, T, S> Deserialize<'de> for HashSet<T, S> where
    T: Deserialize<'de> + Eq + Hash,
    S: BuildHasher + Default
[src]

impl<'de> Deserialize<'de> for NonZeroI64[src]

impl<'de> Deserialize<'de> for i128[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for Ipv4Addr[src]

impl<'de> Deserialize<'de> for OsString[src]

impl<'de> Deserialize<'de> for AtomicIsize[src]

impl<'de> Deserialize<'de> for AtomicU32[src]

impl<'de> Deserialize<'de> for AtomicU8[src]

impl<'de, T0> Deserialize<'de> for (T0,) where
    T0: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>,
    T11: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 30] where
    T: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>,
    T11: Deserialize<'de>,
    T12: Deserialize<'de>,
    T13: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 32] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroI128[src]

impl<'de> Deserialize<'de> for Box<Path, Global>[src]

impl<'de> Deserialize<'de> for CString[src]

impl<'de> Deserialize<'de> for u8[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for Ipv6Addr[src]

impl<'de, K, V> Deserialize<'de> for BTreeMap<K, V> where
    V: Deserialize<'de>,
    K: Deserialize<'de> + Ord
[src]

impl<'de, T> Deserialize<'de> for [T; 27] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 28] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 4] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicU16[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>,
    T11: Deserialize<'de>,
    T12: Deserialize<'de>,
    T13: Deserialize<'de>,
    T14: Deserialize<'de>,
    T15: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroI8[src]

impl<'de> Deserialize<'de> for NonZeroI32[src]

impl<'de> Deserialize<'de> for f32[src]

impl<'de, T> Deserialize<'de> for [T; 9] where
    T: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4> Deserialize<'de> for (T0, T1, T2, T3, T4) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroU32[src]

impl<'de> Deserialize<'de> for NonZeroU16[src]

impl<'de> Deserialize<'de> for SocketAddr[src]

impl<'de, T> Deserialize<'de> for [T; 12] where
    T: Deserialize<'de>, 
[src]

impl<'de, T, E> Deserialize<'de> for Result<T, E> where
    T: Deserialize<'de>,
    E: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 14] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for i64[src]

impl<'de> Deserialize<'de> for NonZeroI16[src]

impl<'de, Idx> Deserialize<'de> for RangeInclusive<Idx> where
    Idx: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for IpAddr[src]

impl<'de> Deserialize<'de> for i32[src]

impl<'de> Deserialize<'de> for AtomicI16[src]

impl<'de> Deserialize<'de> for u16[src]

impl<'de, T> Deserialize<'de> for [T; 6] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for IgnoredAny[src]

impl<'de> Deserialize<'de> for u32[src]

impl<'de> Deserialize<'de> for Duration[src]

impl<'de, T> Deserialize<'de> for [T; 10] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for VecDeque<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 29] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 17] where
    T: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroU128[src]

impl<'de> Deserialize<'de> for AtomicBool[src]

impl<'de, T> Deserialize<'de> for [T; 2] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicI32[src]

impl<'de, T> Deserialize<'de> for [T; 26] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 11] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 8] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 15] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Vec<T, Global> where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroU64[src]

impl<'de> Deserialize<'de> for NonZeroIsize[src]

impl<'de, 'a> Deserialize<'de> for &'a str where
    'de: 'a, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>,
    T11: Deserialize<'de>,
    T12: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicI8[src]

impl<'de> Deserialize<'de> for bool[src]

impl<'de, T> Deserialize<'de> for [T; 22] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for PathBuf[src]

impl<'de, T> Deserialize<'de> for Reverse<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for BinaryHeap<T> where
    T: Deserialize<'de> + Ord
[src]

impl<'de, T> Deserialize<'de> for [T; 21] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for u128[src]

impl<'de, T> Deserialize<'de> for Box<T, Global> where
    T: Deserialize<'de>, 
[src]

impl<'de, 'a> Deserialize<'de> for &'a Path where
    'de: 'a, 
[src]

impl<'de> Deserialize<'de> for ()[src]

impl<'de, T> Deserialize<'de> for [T; 16] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Wrapping<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Bound<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Mutex<T> where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicI64[src]

impl<'de> Deserialize<'de> for SocketAddrV4[src]

impl<'de, T> Deserialize<'de> for PhantomData<T> where
    T: ?Sized
[src]

impl<'de, T> Deserialize<'de> for Option<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Box<[T], Global> where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for String[src]

impl<'de, 'a, T> Deserialize<'de> for Cow<'a, T> where
    T: ToOwned + ?Sized,
    <T as ToOwned>::Owned: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 24] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 18] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for f64[src]

impl<'de> Deserialize<'de> for usize[src]

impl<'de, T> Deserialize<'de> for [T; 25] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicUsize[src]

impl<'de, Idx> Deserialize<'de> for Range<Idx> where
    Idx: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for char[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for LinkedList<T> where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for AtomicU64[src]

impl<'de, T0, T1, T2> Deserialize<'de> for (T0, T1, T2) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for isize[src]

impl<'de> Deserialize<'de> for SystemTime[src]

impl<'de, T> Deserialize<'de> for [T; 19] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for RwLock<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for Cell<T> where
    T: Deserialize<'de> + Copy
[src]

impl<'de, T0, T1, T2, T3, T4, T5> Deserialize<'de> for (T0, T1, T2, T3, T4, T5) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 20] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for i16[src]

impl<'de, T> Deserialize<'de> for [T; 31] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for u64[src]

impl<'de, T> Deserialize<'de> for [T; 13] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 23] where
    T: Deserialize<'de>, 
[src]

impl<'de, 'a> Deserialize<'de> for &'a [u8] where
    'de: 'a, 
[src]

impl<'de, T> Deserialize<'de> for [T; 1] where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 7] where
    T: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroU8[src]

impl<'de> Deserialize<'de> for Box<str, Global>[src]

impl<'de, T0, T1, T2, T3> Deserialize<'de> for (T0, T1, T2, T3) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>, 
[src]

impl<'de, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>,
    T2: Deserialize<'de>,
    T3: Deserialize<'de>,
    T4: Deserialize<'de>,
    T5: Deserialize<'de>,
    T6: Deserialize<'de>,
    T7: Deserialize<'de>,
    T8: Deserialize<'de>,
    T9: Deserialize<'de>,
    T10: Deserialize<'de>,
    T11: Deserialize<'de>,
    T12: Deserialize<'de>,
    T13: Deserialize<'de>,
    T14: Deserialize<'de>, 
[src]

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

impl<'de> Deserialize<'de> for i8[src]

impl<'de, T0, T1> Deserialize<'de> for (T0, T1) where
    T0: Deserialize<'de>,
    T1: Deserialize<'de>, 
[src]

impl<'de> Deserialize<'de> for NonZeroUsize[src]

impl<'de, T> Deserialize<'de> for RefCell<T> where
    T: Deserialize<'de>, 
[src]

impl<'de, T> Deserialize<'de> for [T; 0][src]

impl<'de> Deserialize<'de> for SocketAddrV6[src]

impl<'de> Deserialize<'de> for Number[src]

impl<'de> Deserialize<'de> for Map<String, Value>[src]

impl<'de> Deserialize<'de> for Value[src]

impl<'de> Deserialize<'de> for ServiceAccountKey[src]

impl<'de> Deserialize<'de> for ApplicationSecret[src]

impl<'de> Deserialize<'de> for ConsoleApplicationSecret[src]

impl<'de> Deserialize<'de> for AccessToken[src]

impl<'de> Deserialize<'de> for AuthErrorCode[src]

impl<'de> Deserialize<'de> for AuthError[src]

impl<'de> Deserialize<'de> for DeviceAuthResponse[src]

impl<'de> Deserialize<'de> for NaiveDateTime[src]

impl<'de> Deserialize<'de> for NaiveDate[src]

impl<'de> Deserialize<'de> for Weekday[src]

impl<'de> Deserialize<'de> for NaiveTime[src]

impl<'de> Deserialize<'de> for Month[src]

Loading content...

Implementors

impl<'de> Deserialize<'de> for DateTime<Utc>[src]

Deserialize into a UTC value

The value to be deserialized must be an rfc3339 string.

See the serde module for alternate deserialization formats.

impl<'de> Deserialize<'de> for DateTime<FixedOffset>[src]

Deserialize a value that optionally includes a timezone offset in its string representation

The value to be deserialized must be an rfc3339 string.

See the serde module for alternate deserialization formats.

impl<'de> Deserialize<'de> for DateTime<Local>[src]

Deserialize a value that includes no timezone in its string representation

The value to be deserialized must be an rfc3339 string.

See the serde module for alternate serialization formats.

impl<'de> Deserialize<'de> for EmptyResponse[src]

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

Loading content...