# [−][src]Trait serde::de::Deserialize

    pub trait Deserialize<'de>: Sized {
        fn deserialize<D>(deserializer: D) -> Result<Self, D::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

### `fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,`

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> Deserialize<'de> for ()`[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

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

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

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

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

### `impl<'de> Deserialize<'de> for Box<CStr>`[src]

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

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

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

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

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

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

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

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

### `impl<'de, 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>> Deserialize<'de> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)`[src]

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

#### `fn deserialize_in_place<D>(
deserializer: D,
place: &mut Self
) -> Result<(), D::Error> where
D: Deserializer<'de>,` [src]

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

#### `fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'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]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

### `impl<'de, T: Deserialize<'de>> Deserialize<'de> for Box<T>`[src]

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

### `impl<'de, T: Deserialize<'de>> Deserialize<'de> for Box<[T]>`[src]

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

### `impl<'de> Deserialize<'de> for Box<str>`[src]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Loading content...

## Implementors

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

#### `fn deserialize<D>(deserializer: D) -> Result<IgnoredAny, D::Error> where
D: Deserializer<'de>,` [src]

Loading content...

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)