blob: d7afc1794692d816b73c5c14c7be2bc4fde1c191 [file] [log] [blame]
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A data format that can deserialize any data structure supported by Serde."><meta name="keywords" content="rust, rustlang, rust-lang, Deserializer"><title>Deserializer in serde::de - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script src="../../crates.js"></script><script defer src="../../main.js"></script>
<noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../serde/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Trait Deserializer</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#associated-types">Associated Types</a></h3><div class="sidebar-links"><a href="#associatedtype.Error">Error</a></div><h3 class="sidebar-title"><a href="#required-methods">Required Methods</a></h3><div class="sidebar-links"><a href="#tymethod.deserialize_any">deserialize_any</a><a href="#tymethod.deserialize_bool">deserialize_bool</a><a href="#tymethod.deserialize_byte_buf">deserialize_byte_buf</a><a href="#tymethod.deserialize_bytes">deserialize_bytes</a><a href="#tymethod.deserialize_char">deserialize_char</a><a href="#tymethod.deserialize_enum">deserialize_enum</a><a href="#tymethod.deserialize_f32">deserialize_f32</a><a href="#tymethod.deserialize_f64">deserialize_f64</a><a href="#tymethod.deserialize_i16">deserialize_i16</a><a href="#tymethod.deserialize_i32">deserialize_i32</a><a href="#tymethod.deserialize_i64">deserialize_i64</a><a href="#tymethod.deserialize_i8">deserialize_i8</a><a href="#tymethod.deserialize_identifier">deserialize_identifier</a><a href="#tymethod.deserialize_ignored_any">deserialize_ignored_any</a><a href="#tymethod.deserialize_map">deserialize_map</a><a href="#tymethod.deserialize_newtype_struct">deserialize_newtype_struct</a><a href="#tymethod.deserialize_option">deserialize_option</a><a href="#tymethod.deserialize_seq">deserialize_seq</a><a href="#tymethod.deserialize_str">deserialize_str</a><a href="#tymethod.deserialize_string">deserialize_string</a><a href="#tymethod.deserialize_struct">deserialize_struct</a><a href="#tymethod.deserialize_tuple">deserialize_tuple</a><a href="#tymethod.deserialize_tuple_struct">deserialize_tuple_struct</a><a href="#tymethod.deserialize_u16">deserialize_u16</a><a href="#tymethod.deserialize_u32">deserialize_u32</a><a href="#tymethod.deserialize_u64">deserialize_u64</a><a href="#tymethod.deserialize_u8">deserialize_u8</a><a href="#tymethod.deserialize_unit">deserialize_unit</a><a href="#tymethod.deserialize_unit_struct">deserialize_unit_struct</a></div><h3 class="sidebar-title"><a href="#provided-methods">Provided Methods</a></h3><div class="sidebar-links"><a href="#method.deserialize_i128">deserialize_i128</a><a href="#method.deserialize_u128">deserialize_u128</a><a href="#method.is_human_readable">is_human_readable</a></div><h3 class="sidebar-title"><a href="#implementors">Implementors</a></h3></div><h2 class="location">Other items in<br><a href="../index.html">serde</a>::<wbr><a href="index.html">de</a></h2><div id="sidebar-vars" data-name="Deserializer" data-ty="trait" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../serde/index.html"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div>
<input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
<h1 class="fqn"><span class="in-band">Trait <a href="../index.html">serde</a>::<wbr><a href="index.html">de</a>::<wbr><a class="trait" href="#">Deserializer</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band">
<a class="srclink" href="../../src/serde/de/mod.rs.html#899-1230" title="goto source code">source</a> ·
<a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div>
<div class="docblock item-decl"><pre class="rust trait"><code>pub trait Deserializer&lt;'de&gt;: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> {
type <a href="#associatedtype.Error" class="associatedtype">Error</a>: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>;
<details class="rustdoc-toggle type-contents-toggle"><summary class="hideme"><span>Show 32 methods</span></summary> fn <a href="#tymethod.deserialize_any" class="fnname">deserialize_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_bool" class="fnname">deserialize_bool</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_i8" class="fnname">deserialize_i8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_i16" class="fnname">deserialize_i16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_i32" class="fnname">deserialize_i32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_i64" class="fnname">deserialize_i64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_u8" class="fnname">deserialize_u8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_u16" class="fnname">deserialize_u16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_u32" class="fnname">deserialize_u32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_u64" class="fnname">deserialize_u64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_f32" class="fnname">deserialize_f32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_f64" class="fnname">deserialize_f64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_char" class="fnname">deserialize_char</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_str" class="fnname">deserialize_str</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_string" class="fnname">deserialize_string</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_bytes" class="fnname">deserialize_bytes</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_byte_buf" class="fnname">deserialize_byte_buf</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_option" class="fnname">deserialize_option</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_unit" class="fnname">deserialize_unit</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_unit_struct" class="fnname">deserialize_unit_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_newtype_struct" class="fnname">deserialize_newtype_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_seq" class="fnname">deserialize_seq</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_tuple" class="fnname">deserialize_tuple</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_tuple_struct" class="fnname">deserialize_tuple_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_map" class="fnname">deserialize_map</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_struct" class="fnname">deserialize_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fields: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a>&amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_enum" class="fnname">deserialize_enum</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;variants: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a>&amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_identifier" class="fnname">deserialize_identifier</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<div class="item-spacer"></div> fn <a href="#tymethod.deserialize_ignored_any" class="fnname">deserialize_ignored_any</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
fn <a href="#method.deserialize_i128" class="fnname">deserialize_i128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>,
{ ... }
<div class="item-spacer"></div> fn <a href="#method.deserialize_u128" class="fnname">deserialize_u128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>,
{ ... }
<div class="item-spacer"></div> fn <a href="#method.is_human_readable" class="fnname">is_human_readable</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a> { ... }
</details>}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <strong>data format</strong> that can deserialize any data structure supported by
Serde.</p>
<p>The role of this trait is to define the deserialization half of the <a href="https://serde.rs/data-model.html">Serde
data model</a>, which is a way to categorize every Rust data type into one of
29 possible types. Each method of the <code>Deserializer</code> trait corresponds to one
of the types of the data model.</p>
<p>Implementations of <code>Deserialize</code> map themselves into this data model by
passing to the <code>Deserializer</code> a <code>Visitor</code> implementation that can receive
these various types.</p>
<p>The types that make up the Serde data model are:</p>
<ul>
<li><strong>14 primitive types</strong>
<ul>
<li>bool</li>
<li>i8, i16, i32, i64, i128</li>
<li>u8, u16, u32, u64, u128</li>
<li>f32, f64</li>
<li>char</li>
</ul>
</li>
<li><strong>string</strong>
<ul>
<li>UTF-8 bytes with a length and no null terminator.</li>
<li>When serializing, all strings are handled equally. When deserializing,
there are three flavors of strings: transient, owned, and borrowed.</li>
</ul>
</li>
<li><strong>byte array</strong> - [u8]
<ul>
<li>Similar to strings, during deserialization byte arrays can be
transient, owned, or borrowed.</li>
</ul>
</li>
<li><strong>option</strong>
<ul>
<li>Either none or some value.</li>
</ul>
</li>
<li><strong>unit</strong>
<ul>
<li>The type of <code>()</code> in Rust. It represents an anonymous value containing
no data.</li>
</ul>
</li>
<li><strong>unit_struct</strong>
<ul>
<li>For example <code>struct Unit</code> or <code>PhantomData&lt;T&gt;</code>. It represents a named
value containing no data.</li>
</ul>
</li>
<li><strong>unit_variant</strong>
<ul>
<li>For example the <code>E::A</code> and <code>E::B</code> in <code>enum E { A, B }</code>.</li>
</ul>
</li>
<li><strong>newtype_struct</strong>
<ul>
<li>For example <code>struct Millimeters(u8)</code>.</li>
</ul>
</li>
<li><strong>newtype_variant</strong>
<ul>
<li>For example the <code>E::N</code> in <code>enum E { N(u8) }</code>.</li>
</ul>
</li>
<li><strong>seq</strong>
<ul>
<li>A variably sized heterogeneous sequence of values, for example <code>Vec&lt;T&gt;</code>
or <code>HashSet&lt;T&gt;</code>. When serializing, the length may or may not be known
before iterating through all the data. When deserializing, the length
is determined by looking at the serialized data.</li>
</ul>
</li>
<li><strong>tuple</strong>
<ul>
<li>A statically sized heterogeneous sequence of values for which the
length will be known at deserialization time without looking at the
serialized data, for example <code>(u8,)</code> or <code>(String, u64, Vec&lt;T&gt;)</code> or
<code>[u64; 10]</code>.</li>
</ul>
</li>
<li><strong>tuple_struct</strong>
<ul>
<li>A named tuple, for example <code>struct Rgb(u8, u8, u8)</code>.</li>
</ul>
</li>
<li><strong>tuple_variant</strong>
<ul>
<li>For example the <code>E::T</code> in <code>enum E { T(u8, u8) }</code>.</li>
</ul>
</li>
<li><strong>map</strong>
<ul>
<li>A heterogeneous key-value pairing, for example <code>BTreeMap&lt;K, V&gt;</code>.</li>
</ul>
</li>
<li><strong>struct</strong>
<ul>
<li>A heterogeneous key-value pairing in which the keys are strings and
will be known at deserialization time without looking at the serialized
data, for example <code>struct S { r: u8, g: u8, b: u8 }</code>.</li>
</ul>
</li>
<li><strong>struct_variant</strong>
<ul>
<li>For example the <code>E::S</code> in <code>enum E { S { r: u8, g: u8, b: u8 } }</code>.</li>
</ul>
</li>
</ul>
<p>The <code>Deserializer</code> trait supports two entry point styles which enables
different kinds of deserialization.</p>
<ol>
<li>
<p>The <code>deserialize</code> method. Self-describing data formats like JSON are able
to look at the serialized data and tell what it represents. For example
the JSON deserializer may see an opening curly brace (<code>{</code>) and know that
it is seeing a map. If the data format supports
<code>Deserializer::deserialize_any</code>, it will drive the Visitor using whatever
type it sees in the input. JSON uses this approach when deserializing
<code>serde_json::Value</code> which is an enum that can represent any JSON
document. Without knowing what is in a JSON document, we can deserialize
it to <code>serde_json::Value</code> by going through
<code>Deserializer::deserialize_any</code>.</p>
</li>
<li>
<p>The various <code>deserialize_*</code> methods. Non-self-describing formats like
Bincode need to be told what is in the input in order to deserialize it.
The <code>deserialize_*</code> methods are hints to the deserializer for how to
interpret the next piece of input. Non-self-describing formats are not
able to deserialize something like <code>serde_json::Value</code> which relies on
<code>Deserializer::deserialize_any</code>.</p>
</li>
</ol>
<p>When implementing <code>Deserialize</code>, you should avoid relying on
<code>Deserializer::deserialize_any</code> unless you need to be told by the
Deserializer what type is in the input. Know that relying on
<code>Deserializer::deserialize_any</code> means your data type will be able to
deserialize from self-describing formats only, ruling out Bincode and many
others.</p>
<h2 id="lifetime" class="section-header"><a href="#lifetime">Lifetime</a></h2>
<p>The <code>'de</code> lifetime of this trait is the lifetime of data that may be
borrowed from the input when deserializing. See the page <a href="https://serde.rs/lifetimes.html">Understanding
deserializer lifetimes</a> for a more detailed explanation of these lifetimes.</p>
<h2 id="example-implementation" class="section-header"><a href="#example-implementation">Example implementation</a></h2>
<p>The <a href="https://serde.rs/data-format.html">example data format</a> presented on the website contains example code for
a basic JSON <code>Deserializer</code>.</p>
</div></details><h2 id="associated-types" class="small-section-header">Associated Types<a href="#associated-types" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Error" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#902" title="goto source code">source</a></div><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a>: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a></h4></div></summary><div class="docblock"><p>The error type that can be returned if some error occurs during
deserialization.</p>
</div></details></div><h2 id="required-methods" class="small-section-header">Required methods<a href="#required-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_any" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#913-915" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_any" class="fnname">deserialize_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Require the <code>Deserializer</code> to figure out how to drive the visitor based
on what data type is in the input.</p>
<p>When implementing <code>Deserialize</code>, you should avoid relying on
<code>Deserializer::deserialize_any</code> unless you need to be told by the
Deserializer what type is in the input. Know that relying on
<code>Deserializer::deserialize_any</code> means your data type will be able to
deserialize from self-describing formats only, ruling out Bincode and
many others.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_bool" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#918-920" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_bool" class="fnname">deserialize_bool</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>bool</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_i8" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#923-925" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_i8" class="fnname">deserialize_i8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i8</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_i16" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#928-930" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_i16" class="fnname">deserialize_i16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i16</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_i32" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#933-935" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_i32" class="fnname">deserialize_i32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i32</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_i64" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#938-940" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_i64" class="fnname">deserialize_i64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i64</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_u8" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#957-959" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_u8" class="fnname">deserialize_u8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u8</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_u16" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#962-964" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_u16" class="fnname">deserialize_u16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u16</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_u32" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#967-969" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_u32" class="fnname">deserialize_u32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u32</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_u64" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#972-974" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_u64" class="fnname">deserialize_u64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u64</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_f32" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#991-993" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_f32" class="fnname">deserialize_f32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>f32</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_f64" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#996-998" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_f64" class="fnname">deserialize_f64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>f64</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_char" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1001-1003" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_char" class="fnname">deserialize_char</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>char</code> value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_str" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1012-1014" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_str" class="fnname">deserialize_str</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a string value and does
not benefit from taking ownership of buffered data owned by the
<code>Deserializer</code>.</p>
<p>If the <code>Visitor</code> would benefit from taking ownership of <code>String</code> data,
indicate this to the <code>Deserializer</code> by using <code>deserialize_string</code>
instead.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_string" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1023-1025" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_string" class="fnname">deserialize_string</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a string value and would
benefit from taking ownership of buffered data owned by the
<code>Deserializer</code>.</p>
<p>If the <code>Visitor</code> would not benefit from taking ownership of <code>String</code>
data, indicate that to the <code>Deserializer</code> by using <code>deserialize_str</code>
instead.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_bytes" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1034-1036" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_bytes" class="fnname">deserialize_bytes</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a byte array and does not
benefit from taking ownership of buffered data owned by the
<code>Deserializer</code>.</p>
<p>If the <code>Visitor</code> would benefit from taking ownership of <code>Vec&lt;u8&gt;</code> data,
indicate this to the <code>Deserializer</code> by using <code>deserialize_byte_buf</code>
instead.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_byte_buf" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1045-1047" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_byte_buf" class="fnname">deserialize_byte_buf</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a byte array and would
benefit from taking ownership of buffered data owned by the
<code>Deserializer</code>.</p>
<p>If the <code>Visitor</code> would not benefit from taking ownership of <code>Vec&lt;u8&gt;</code>
data, indicate that to the <code>Deserializer</code> by using <code>deserialize_bytes</code>
instead.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_option" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1054-1056" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_option" class="fnname">deserialize_option</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an optional value.</p>
<p>This allows deserializers that encode an optional value as a nullable
value to convert the null value into <code>None</code> and a regular value into
<code>Some(value)</code>.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_unit" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1059-1061" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_unit" class="fnname">deserialize_unit</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a unit value.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_unit_struct" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1065-1071" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_unit_struct" class="fnname">deserialize_unit_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a unit struct with a
particular name.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_newtype_struct" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1075-1081" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_newtype_struct" class="fnname">deserialize_newtype_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a newtype struct with a
particular name.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_seq" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1084-1086" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_seq" class="fnname">deserialize_seq</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a sequence of values.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_tuple" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1090-1092" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_tuple" class="fnname">deserialize_tuple</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a sequence of values and
knows how many values there are without looking at the serialized data.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_tuple_struct" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1096-1103" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_tuple_struct" class="fnname">deserialize_tuple_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a tuple struct with a
particular name and number of fields.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_map" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1106-1108" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_map" class="fnname">deserialize_map</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a map of key-value pairs.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_struct" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1112-1119" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_struct" class="fnname">deserialize_struct</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;fields: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a>&amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a struct with a particular
name and fields.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_enum" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1123-1130" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_enum" class="fnname">deserialize_enum</a>&lt;V&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;variants: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'static [</a>&amp;'static <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;visitor: V<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an enum value with a
particular name and possible variants.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_identifier" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1134-1136" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_identifier" class="fnname">deserialize_identifier</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting the name of a struct
field or the discriminant of an enum variant.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="tymethod.deserialize_ignored_any" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1142-1144" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#tymethod.deserialize_ignored_any" class="fnname">deserialize_ignored_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type needs to deserialize a value whose type
doesn’t matter because it is ignored.</p>
<p>Deserializers for non-self-describing formats may not support this mode.</p>
</div></details></div><h2 id="provided-methods" class="small-section-header">Provided methods<a href="#provided-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle" open><summary><div id="method.deserialize_i128" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#947-953" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#method.deserialize_i128" class="fnname">deserialize_i128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i128</code> value.</p>
<p>This method is available only on Rust compiler versions &gt;=1.26. The
default behavior unconditionally returns an error.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="method.deserialize_u128" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#981-987" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#method.deserialize_u128" class="fnname">deserialize_u128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Value" title="type serde::de::Visitor::Value">Value</a>, Self::<a class="associatedtype" href="../trait.Deserializer.html#associatedtype.Error" title="type serde::Deserializer::Error">Error</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: <a class="trait" href="trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,&nbsp;</span></h4></div></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>u128</code> value.</p>
<p>This method is available only on Rust compiler versions &gt;=1.26. The
default behavior unconditionally returns an error.</p>
</div></details><details class="rustdoc-toggle" open><summary><div id="method.is_human_readable" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/mod.rs.html#1213-1215" title="goto source code">source</a></div><h4 class="code-header">fn <a href="#method.is_human_readable" class="fnname">is_human_readable</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></div></summary><div class="docblock"><p>Determine whether <code>Deserialize</code> implementations should expect to
deserialize their human-readable form.</p>
<p>Some types have a human-readable form that may be somewhat expensive to
construct, as well as a binary form that is compact and efficient.
Generally text-based formats like JSON and YAML will prefer to use the
human-readable one and binary formats like Bincode will prefer the
compact one.</p>
<div class='information'><div class='tooltip edition' data-edition="2018"></div></div><div class="example-wrap"><pre class="rust rust-example-rendered edition"><code><span class="kw">use</span> <span class="ident">serde::de</span>::{<span class="self">self</span>, <span class="ident">Deserialize</span>, <span class="ident">Deserializer</span>};
<span class="kw">impl</span><span class="op">&lt;</span><span class="lifetime">&#39;de</span><span class="op">&gt;</span> <span class="ident">Deserialize</span><span class="op">&lt;</span><span class="lifetime">&#39;de</span><span class="op">&gt;</span> <span class="kw">for</span> <span class="ident">Timestamp</span> {
<span class="kw">fn</span> <span class="ident">deserialize</span><span class="op">&lt;</span><span class="ident">D</span><span class="op">&gt;</span>(<span class="ident">deserializer</span>: <span class="ident">D</span>) -&gt; <span class="prelude-ty">Result</span><span class="op">&lt;</span><span class="self">Self</span>, <span class="ident">D::Error</span><span class="op">&gt;</span>
<span class="kw">where</span>
<span class="ident">D</span>: <span class="ident">Deserializer</span><span class="op">&lt;</span><span class="lifetime">&#39;de</span><span class="op">&gt;</span>,
{
<span class="kw">if</span> <span class="ident">deserializer</span>.<span class="ident">is_human_readable</span>() {
<span class="comment">// Deserialize from a human-readable string like &quot;2015-05-15T17:01:00Z&quot;.</span>
<span class="kw">let</span> <span class="ident">s</span> <span class="op">=</span> <span class="ident">String::deserialize</span>(<span class="ident">deserializer</span>)<span class="question-mark">?</span>;
<span class="ident">Timestamp::from_str</span>(<span class="kw-2">&amp;</span><span class="ident">s</span>).<span class="ident">map_err</span>(<span class="ident">de::Error::custom</span>)
} <span class="kw">else</span> {
<span class="comment">// Deserialize from a compact binary representation, seconds since</span>
<span class="comment">// the Unix epoch.</span>
<span class="kw">let</span> <span class="ident">n</span> <span class="op">=</span> <span class="ident">u64::deserialize</span>(<span class="ident">deserializer</span>)<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(<span class="ident">Timestamp::EPOCH</span> <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="ident">n</span>))
}
}
}</code></pre></div>
<p>The default implementation of this method returns <code>true</code>. Data formats
may override this to <code>false</code> to request a compact form for types that
support one. Note that modifying this method to change a format from
human-readable to compact or vice versa should be regarded as a breaking
change, as a value serialized in human-readable mode is not required to
deserialize from the same data in compact mode.</p>
</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#761-779" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, 'a, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.BytesDeserializer.html" title="struct serde::de::value::BytesDeserializer">BytesDeserializer</a>&lt;'a, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-1" class="type trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#667-702" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-1" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, 'a, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.CowStrDeserializer.html" title="struct serde::de::value::CowStrDeserializer">CowStrDeserializer</a>&lt;'a, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-2" class="type trait-impl has-srclink"><a href="#associatedtype.Error-2" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-2" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#400-432" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-2" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, 'a, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.StrDeserializer.html" title="struct serde::de::value::StrDeserializer">StrDeserializer</a>&lt;'a, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-3" class="type trait-impl has-srclink"><a href="#associatedtype.Error-3" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-3" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#1417-1447" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-3" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, A&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.MapAccessDeserializer.html" title="struct serde::de::value::MapAccessDeserializer">MapAccessDeserializer</a>&lt;A&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;A: <a class="trait" href="trait.MapAccess.html" title="trait serde::de::MapAccess">MapAccess</a>&lt;'de&gt;,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-4" class="type trait-impl has-srclink"><a href="#associatedtype.Error-4" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = A::<a class="associatedtype" href="trait.MapAccess.html#associatedtype.Error" title="type serde::de::MapAccess::Error">Error</a></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-4" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#1016-1034" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-4" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, A&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.SeqAccessDeserializer.html" title="struct serde::de::value::SeqAccessDeserializer">SeqAccessDeserializer</a>&lt;A&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;A: <a class="trait" href="trait.SeqAccess.html" title="trait serde::de::SeqAccess">SeqAccess</a>&lt;'de&gt;,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-5" class="type trait-impl has-srclink"><a href="#associatedtype.Error-5" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = A::<a class="associatedtype" href="trait.SeqAccess.html#associatedtype.Error" title="type serde::de::SeqAccess::Error">Error</a></h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-5" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#277" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-5" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.BoolDeserializer.html" title="struct serde::de::value::BoolDeserializer">BoolDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-6" class="type trait-impl has-srclink"><a href="#associatedtype.Error-6" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-6" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#809-827" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-6" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.BorrowedBytesDeserializer.html" title="struct serde::de::value::BorrowedBytesDeserializer">BorrowedBytesDeserializer</a>&lt;'de, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-7" class="type trait-impl has-srclink"><a href="#associatedtype.Error-7" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-7" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#479-511" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-7" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.BorrowedStrDeserializer.html" title="struct serde::de::value::BorrowedStrDeserializer">BorrowedStrDeserializer</a>&lt;'de, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-8" class="type trait-impl has-srclink"><a href="#associatedtype.Error-8" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-8" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#289" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-8" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.CharDeserializer.html" title="struct serde::de::value::CharDeserializer">CharDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-9" class="type trait-impl has-srclink"><a href="#associatedtype.Error-9" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-9" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#287" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-9" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.F32Deserializer.html" title="struct serde::de::value::F32Deserializer">F32Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-10" class="type trait-impl has-srclink"><a href="#associatedtype.Error-10" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-10" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#288" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-10" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.F64Deserializer.html" title="struct serde::de::value::F64Deserializer">F64Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-11" class="type trait-impl has-srclink"><a href="#associatedtype.Error-11" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-11" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#278" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-11" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.I8Deserializer.html" title="struct serde::de::value::I8Deserializer">I8Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-12" class="type trait-impl has-srclink"><a href="#associatedtype.Error-12" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-12" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#279" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-12" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.I16Deserializer.html" title="struct serde::de::value::I16Deserializer">I16Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-13" class="type trait-impl has-srclink"><a href="#associatedtype.Error-13" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-13" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#280" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-13" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.I32Deserializer.html" title="struct serde::de::value::I32Deserializer">I32Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-14" class="type trait-impl has-srclink"><a href="#associatedtype.Error-14" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-14" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#281" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-14" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.I64Deserializer.html" title="struct serde::de::value::I64Deserializer">I64Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-15" class="type trait-impl has-srclink"><a href="#associatedtype.Error-15" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-15" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#292" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-15" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.I128Deserializer.html" title="struct serde::de::value::I128Deserializer">I128Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-16" class="type trait-impl has-srclink"><a href="#associatedtype.Error-16" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-16" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#282" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-16" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.IsizeDeserializer.html" title="struct serde::de::value::IsizeDeserializer">IsizeDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-17" class="type trait-impl has-srclink"><a href="#associatedtype.Error-17" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-17" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#572-604" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-17" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.StringDeserializer.html" title="struct serde::de::value::StringDeserializer">StringDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-18" class="type trait-impl has-srclink"><a href="#associatedtype.Error-18" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-18" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#283" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-18" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.U8Deserializer.html" title="struct serde::de::value::U8Deserializer">U8Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-19" class="type trait-impl has-srclink"><a href="#associatedtype.Error-19" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-19" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#284" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-19" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.U16Deserializer.html" title="struct serde::de::value::U16Deserializer">U16Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-20" class="type trait-impl has-srclink"><a href="#associatedtype.Error-20" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-20" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#318-350" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-20" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.U32Deserializer.html" title="struct serde::de::value::U32Deserializer">U32Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-21" class="type trait-impl has-srclink"><a href="#associatedtype.Error-21" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-21" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#285" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-21" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.U64Deserializer.html" title="struct serde::de::value::U64Deserializer">U64Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-22" class="type trait-impl has-srclink"><a href="#associatedtype.Error-22" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-22" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#293" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-22" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.U128Deserializer.html" title="struct serde::de::value::U128Deserializer">U128Deserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-23" class="type trait-impl has-srclink"><a href="#associatedtype.Error-23" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-23" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#144-169" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-23" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.UnitDeserializer.html" title="struct serde::de::value::UnitDeserializer">UnitDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-24" class="type trait-impl has-srclink"><a href="#associatedtype.Error-24" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-24" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#286" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-24" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.UsizeDeserializer.html" title="struct serde::de::value::UsizeDeserializer">UsizeDeserializer</a>&lt;E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-25" class="type trait-impl has-srclink"><a href="#associatedtype.Error-25" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-25" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#1107-1148" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-25" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, I, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.MapDeserializer.html" title="struct serde::de::value::MapDeserializer">MapDeserializer</a>&lt;'de, I, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>: Pair,<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a> as Pair&gt;::First: <a class="trait" href="trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;I::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a> as Pair&gt;::Second: <a class="trait" href="trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-26" class="type trait-impl has-srclink"><a href="#associatedtype.Error-26" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details><details class="rustdoc-toggle implementors-toggle"><summary><div id="impl-Deserializer%3C%27de%3E-26" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/serde/de/value.rs.html#884-906" title="goto source code">source</a></div><a href="#impl-Deserializer%3C%27de%3E-26" class="anchor"></a><h3 class="code-header in-band">impl&lt;'de, I, T, E&gt; <a class="trait" href="../trait.Deserializer.html" title="trait serde::Deserializer">Deserializer</a>&lt;'de&gt; for <a class="struct" href="value/struct.SeqDeserializer.html" title="struct serde::de::value::SeqDeserializer">SeqDeserializer</a>&lt;I, E&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = T&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="trait.Error.html" title="trait serde::de::Error">Error</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><div id="associatedtype.Error-27" class="type trait-impl has-srclink"><a href="#associatedtype.Error-27" class="anchor"></a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></div></div></details></div><script type="text/javascript" src="../../implementors/serde/de/trait.Deserializer.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="serde" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.60.0-nightly (1bd4fdc94 2022-01-12)" ></div>
</body></html>