[][src]Trait holochain_wasmer_common::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; 0][src]

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

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

impl<'de, T> Deserialize<'de> for BinaryHeap<T> where
    T: Deserialize<'de> + Ord
[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, T> Deserialize<'de> for [T; 6] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de> Deserialize<'de> for f64[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> Deserialize<'de> for f32[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 AtomicI16[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for [T; 32] 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; 3] 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 u16[src]

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

impl<'de> Deserialize<'de> for Box<CStr, Global>[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 NonZeroI128[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de, T> Deserialize<'de> for BTreeSet<T> where
    T: Deserialize<'de> + Eq + Ord
[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> Deserialize<'de> for [T; 15] where
    T: Deserialize<'de>, 
[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'de> Deserialize<'de> for isize[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> Deserialize<'de> for Ipv4Addr[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 Reverse<T> 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, 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 Box<str, Global>[src]

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

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

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

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

impl<'de> Deserialize<'de> for i32[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 RawRef<'de>

impl<'de> Deserialize<'de> for Raw

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 SerializedBytesError[src]

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

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

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

Loading content...