[][src]Trait assemble_app::Deserialize

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; 19] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

impl<'de, T> Deserialize<'de> for Reverse<T> where
    T: 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 [T; 1] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for [T; 15] 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 PathBuf[src]

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

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

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

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

impl<'de, 'a> Deserialize<'de> for &'a Path where
    'de: 'a, 
[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, T, S> Deserialize<'de> for HashSet<T, S> where
    T: Deserialize<'de> + Eq + Hash,
    S: BuildHasher + Default
[src]

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

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

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

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

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

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

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

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

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

impl<'de> Deserialize<'de> for i32[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, K, V, S> Deserialize<'de> for HashMap<K, V, S> where
    K: Deserialize<'de> + Eq + Hash,
    V: Deserialize<'de>,
    S: BuildHasher + Default
[src]

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

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

impl<'de, T> Deserialize<'de> for [T; 22] where
    T: 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> Deserialize<'de> for NonZeroI8[src]

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for [T; 10] 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; 16] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for [T; 4] where
    T: Deserialize<'de>, 
[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, 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> Deserialize<'de> for u32[src]

impl<'de> Deserialize<'de> for u16[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, T> Deserialize<'de> for Box<[T], Global> where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for [T; 23] 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; 25] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

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

impl<'de> Deserialize<'de> for AtomicU8[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; 28] where
    T: Deserialize<'de>, 
[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, T> Deserialize<'de> for [T; 21] where
    T: Deserialize<'de>, 
[src]

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

impl<'de, T> Deserialize<'de> for RefCell<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 AtomicI64[src]

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

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

impl<'de, T0> Deserialize<'de> for (T0,) where
    T0: Deserialize<'de>, 
[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> 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; 9] where
    T: Deserialize<'de>, 
[src]

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

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

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

impl<'de> Deserialize<'de> for AtomicIsize[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 AtomicBool[src]

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

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

impl<'de, T> Deserialize<'de> for [T; 24] where
    T: Deserialize<'de>, 
[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 i16[src]

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

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

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

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

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

Loading content...

Implementors

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

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

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

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

Loading content...