edlang/serde/trait.Deserializer.html
2024-07-26 09:42:18 +00:00

451 lines
102 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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."><title>Deserializer in serde - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-dd39b87e5fcfba68.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="serde" data-themes="" data-resource-suffix="" data-rustdoc-version="1.80.0 (051478957 2024-07-21)" data-channel="1.80.0" data-search-js="search-d52510db62a78183.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-118b08c4c78b968e.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-20a3ad099b048cf2.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-df360f571f6edeae.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.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="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../serde/index.html">serde</a><span class="version">1.0.204</span></h2></div><h2 class="location"><a href="#">Deserializer</a></h2><div class="sidebar-elems"><section><h3><a href="#required-associated-types">Required Associated Types</a></h3><ul class="block"><li><a href="#associatedtype.Error">Error</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.deserialize_any">deserialize_any</a></li><li><a href="#tymethod.deserialize_bool">deserialize_bool</a></li><li><a href="#tymethod.deserialize_byte_buf">deserialize_byte_buf</a></li><li><a href="#tymethod.deserialize_bytes">deserialize_bytes</a></li><li><a href="#tymethod.deserialize_char">deserialize_char</a></li><li><a href="#tymethod.deserialize_enum">deserialize_enum</a></li><li><a href="#tymethod.deserialize_f32">deserialize_f32</a></li><li><a href="#tymethod.deserialize_f64">deserialize_f64</a></li><li><a href="#tymethod.deserialize_i16">deserialize_i16</a></li><li><a href="#tymethod.deserialize_i32">deserialize_i32</a></li><li><a href="#tymethod.deserialize_i64">deserialize_i64</a></li><li><a href="#tymethod.deserialize_i8">deserialize_i8</a></li><li><a href="#tymethod.deserialize_identifier">deserialize_identifier</a></li><li><a href="#tymethod.deserialize_ignored_any">deserialize_ignored_any</a></li><li><a href="#tymethod.deserialize_map">deserialize_map</a></li><li><a href="#tymethod.deserialize_newtype_struct">deserialize_newtype_struct</a></li><li><a href="#tymethod.deserialize_option">deserialize_option</a></li><li><a href="#tymethod.deserialize_seq">deserialize_seq</a></li><li><a href="#tymethod.deserialize_str">deserialize_str</a></li><li><a href="#tymethod.deserialize_string">deserialize_string</a></li><li><a href="#tymethod.deserialize_struct">deserialize_struct</a></li><li><a href="#tymethod.deserialize_tuple">deserialize_tuple</a></li><li><a href="#tymethod.deserialize_tuple_struct">deserialize_tuple_struct</a></li><li><a href="#tymethod.deserialize_u16">deserialize_u16</a></li><li><a href="#tymethod.deserialize_u32">deserialize_u32</a></li><li><a href="#tymethod.deserialize_u64">deserialize_u64</a></li><li><a href="#tymethod.deserialize_u8">deserialize_u8</a></li><li><a href="#tymethod.deserialize_unit">deserialize_unit</a></li><li><a href="#tymethod.deserialize_unit_struct">deserialize_unit_struct</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.deserialize_i128">deserialize_i128</a></li><li><a href="#method.deserialize_u128">deserialize_u128</a></li><li><a href="#method.is_human_readable">is_human_readable</a></li></ul><h3><a href="#object-safety">Object Safety</a></h3><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In crate serde</a></h2></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="index.html">serde</a>::<wbr><a class="trait" href="#">Deserializer</a><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><span class="out-of-band"><a class="src" href="../src/serde/de/mod.rs.html#915-1240">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Deserializer&lt;'de&gt;: <a class="trait" href="https://doc.rust-lang.org/1.80.0/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="de/trait.Error.html" title="trait serde::de::Error">Error</a>;
<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 32 methods</span></summary> // Required methods
fn <a href="#tymethod.deserialize_any" class="fn">deserialize_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_bool" class="fn">deserialize_bool</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_i8" class="fn">deserialize_i8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_i16" class="fn">deserialize_i16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_i32" class="fn">deserialize_i32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_i64" class="fn">deserialize_i64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_u8" class="fn">deserialize_u8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_u16" class="fn">deserialize_u16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_u32" class="fn">deserialize_u32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_u64" class="fn">deserialize_u64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_f32" class="fn">deserialize_f32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_f64" class="fn">deserialize_f64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_char" class="fn">deserialize_char</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_str" class="fn">deserialize_str</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_string" class="fn">deserialize_string</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_bytes" class="fn">deserialize_bytes</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_byte_buf" class="fn">deserialize_byte_buf</a>&lt;V&gt;(
self,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_option" class="fn">deserialize_option</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_unit" class="fn">deserialize_unit</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_unit_struct" class="fn">deserialize_unit_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_newtype_struct" class="fn">deserialize_newtype_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_seq" class="fn">deserialize_seq</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_tuple" class="fn">deserialize_tuple</a>&lt;V&gt;(
self,
len: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_tuple_struct" class="fn">deserialize_tuple_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
len: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_map" class="fn">deserialize_map</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_struct" class="fn">deserialize_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
fields: &amp;'static [&amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>],
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_enum" class="fn">deserialize_enum</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
variants: &amp;'static [&amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>],
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_identifier" class="fn">deserialize_identifier</a>&lt;V&gt;(
self,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
<span class="item-spacer"></span> fn <a href="#tymethod.deserialize_ignored_any" class="fn">deserialize_ignored_any</a>&lt;V&gt;(
self,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span>;
// Provided methods
fn <a href="#method.deserialize_i128" class="fn">deserialize_i128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span> { ... }
<span class="item-spacer"></span> fn <a href="#method.deserialize_u128" class="fn">deserialize_u128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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">where V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;</span> { ... }
<span class="item-spacer"></span> fn <a href="#method.is_human_readable" class="fn">is_human_readable</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.bool.html">bool</a> { ... }
</details>}</code></pre><details class="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_any</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
Postcard 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 Postcard and many
others.</p>
<h2 id="lifetime"><a class="doc-anchor" href="#lifetime">§</a>Lifetime</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"><a class="doc-anchor" href="#example-implementation">§</a>Example implementation</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="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Error" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#918">source</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a>: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a></h4></section></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="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_any" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#929-931">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_any" class="fn">deserialize_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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 Postcard and
many others.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_bool" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#934-936">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_bool" class="fn">deserialize_bool</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>bool</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_i8" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#939-941">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_i8" class="fn">deserialize_i8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i8</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_i16" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#944-946">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_i16" class="fn">deserialize_i16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i16</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_i32" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#949-951">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_i32" class="fn">deserialize_i32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i32</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_i64" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#954-956">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_i64" class="fn">deserialize_i64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i64</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_u8" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#970-972">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_u8" class="fn">deserialize_u8</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u8</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_u16" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#975-977">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_u16" class="fn">deserialize_u16</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u16</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_u32" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#980-982">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_u32" class="fn">deserialize_u32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u32</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_u64" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#985-987">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_u64" class="fn">deserialize_u64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>u64</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_f32" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1001-1003">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_f32" class="fn">deserialize_f32</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>f32</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_f64" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1006-1008">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_f64" class="fn">deserialize_f64</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>f64</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_char" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1011-1013">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_char" class="fn">deserialize_char</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a <code>char</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_str" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1022-1024">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_str" class="fn">deserialize_str</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_string" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1033-1035">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_string" class="fn">deserialize_string</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_bytes" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1044-1046">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_bytes" class="fn">deserialize_bytes</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_byte_buf" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1055-1057">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_byte_buf" class="fn">deserialize_byte_buf</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_option" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1064-1066">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_option" class="fn">deserialize_option</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_unit" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1069-1071">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_unit" class="fn">deserialize_unit</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a unit value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_unit_struct" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1075-1081">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_unit_struct" class="fn">deserialize_unit_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_newtype_struct" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1085-1091">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_newtype_struct" class="fn">deserialize_newtype_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_seq" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1094-1096">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_seq" class="fn">deserialize_seq</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting a sequence of values.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.deserialize_tuple" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1100-1102">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_tuple" class="fn">deserialize_tuple</a>&lt;V&gt;(
self,
len: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_tuple_struct" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1106-1113">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_tuple_struct" class="fn">deserialize_tuple_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
len: <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.usize.html">usize</a>,
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_map" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1116-1118">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_map" class="fn">deserialize_map</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_struct" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1122-1129">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_struct" class="fn">deserialize_struct</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
fields: &amp;'static [&amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>],
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_enum" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1133-1140">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_enum" class="fn">deserialize_enum</a>&lt;V&gt;(
self,
name: &amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>,
variants: &amp;'static [&amp;'static <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.str.html">str</a>],
visitor: V,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_identifier" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1144-1146">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_identifier" class="fn">deserialize_identifier</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></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="toggle method-toggle" open><summary><section id="tymethod.deserialize_ignored_any" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1152-1154">source</a><h4 class="code-header">fn <a href="#tymethod.deserialize_ignored_any" class="fn">deserialize_ignored_any</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type needs to deserialize a value whose type
doesnt 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="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.deserialize_i128" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#961-967">source</a><h4 class="code-header">fn <a href="#method.deserialize_i128" class="fn">deserialize_i128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>i128</code> value.</p>
<p>The default behavior unconditionally returns an error.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.deserialize_u128" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#992-998">source</a><h4 class="code-header">fn <a href="#method.deserialize_u128" class="fn">deserialize_u128</a>&lt;V&gt;(self, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.80.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="de/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;<div class="where">where
V: <a class="trait" href="de/trait.Visitor.html" title="trait serde::de::Visitor">Visitor</a>&lt;'de&gt;,</div></h4></section></summary><div class="docblock"><p>Hint that the <code>Deserialize</code> type is expecting an <code>u128</code> value.</p>
<p>The default behavior unconditionally returns an error.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_human_readable" class="method"><a class="src rightside" href="../src/serde/de/mod.rs.html#1223-1225">source</a><h4 class="code-header">fn <a href="#method.is_human_readable" class="fn">is_human_readable</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.80.0/std/primitive.bool.html">bool</a></h4></section></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 Postcard will prefer the
compact one.</p>
<div class="example-wrap edition"><a href="#" class="tooltip" title="This example runs with edition 2021"></a><pre class="rust rust-example-rendered"><code><span class="kw">use </span>serde::de::{<span class="self">self</span>, Deserialize, Deserializer};
<span class="kw">impl</span>&lt;<span class="lifetime">'de</span>&gt; Deserialize&lt;<span class="lifetime">'de</span>&gt; <span class="kw">for </span>Timestamp {
<span class="kw">fn </span>deserialize&lt;D&gt;(deserializer: D) -&gt; <span class="prelude-ty">Result</span>&lt;<span class="self">Self</span>, D::Error&gt;
<span class="kw">where
</span>D: Deserializer&lt;<span class="lifetime">'de</span>&gt;,
{
<span class="kw">if </span>deserializer.is_human_readable() {
<span class="comment">// Deserialize from a human-readable string like "2015-05-15T17:01:00Z".
</span><span class="kw">let </span>s = String::deserialize(deserializer)<span class="question-mark">?</span>;
Timestamp::from_str(<span class="kw-2">&amp;</span>s).map_err(de::Error::custom)
} <span class="kw">else </span>{
<span class="comment">// Deserialize from a compact binary representation, seconds since
// the Unix epoch.
</span><span class="kw">let </span>n = u64::deserialize(deserializer)<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(Timestamp::EPOCH + Duration::seconds(n))
}
}
}</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="object-safety" class="section-header">Object Safety<a href="#object-safety" class="anchor">§</a></h2><div class="object-safety-info">This trait is <b>not</b> <a href="https://doc.rust-lang.org/1.80.0/reference/items/traits.html#object-safety">object safe</a>.</div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-BytesDeserializer%3C'a,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#808-826">source</a><a href="#impl-Deserializer%3C'de%3E-for-BytesDeserializer%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.BytesDeserializer.html" title="struct serde::de::value::BytesDeserializer">BytesDeserializer</a>&lt;'a, E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-CowStrDeserializer%3C'a,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#714-749">source</a><a href="#impl-Deserializer%3C'de%3E-for-CowStrDeserializer%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.CowStrDeserializer.html" title="struct serde::de::value::CowStrDeserializer">CowStrDeserializer</a>&lt;'a, E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-2" class="associatedtype trait-impl"><a href="#associatedtype.Error-2" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-StrDeserializer%3C'a,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#427-459">source</a><a href="#impl-Deserializer%3C'de%3E-for-StrDeserializer%3C'a,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.StrDeserializer.html" title="struct serde::de::value::StrDeserializer">StrDeserializer</a>&lt;'a, E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-3" class="associatedtype trait-impl"><a href="#associatedtype.Error-3" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-EnumAccessDeserializer%3CA%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#1534-1552">source</a><a href="#impl-Deserializer%3C'de%3E-for-EnumAccessDeserializer%3CA%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.EnumAccessDeserializer.html" title="struct serde::de::value::EnumAccessDeserializer">EnumAccessDeserializer</a>&lt;A&gt;<div class="where">where
A: <a class="trait" href="de/trait.EnumAccess.html" title="trait serde::de::EnumAccess">EnumAccess</a>&lt;'de&gt;,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-4" class="associatedtype trait-impl"><a href="#associatedtype.Error-4" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = &lt;A as <a class="trait" href="de/trait.EnumAccess.html" title="trait serde::de::EnumAccess">EnumAccess</a>&lt;'de&gt;&gt;::<a class="associatedtype" href="de/trait.EnumAccess.html#associatedtype.Error" title="type serde::de::EnumAccess::Error">Error</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-MapAccessDeserializer%3CA%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#1469-1499">source</a><a href="#impl-Deserializer%3C'de%3E-for-MapAccessDeserializer%3CA%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.MapAccessDeserializer.html" title="struct serde::de::value::MapAccessDeserializer">MapAccessDeserializer</a>&lt;A&gt;<div class="where">where
A: <a class="trait" href="de/trait.MapAccess.html" title="trait serde::de::MapAccess">MapAccess</a>&lt;'de&gt;,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-5" class="associatedtype trait-impl"><a href="#associatedtype.Error-5" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = &lt;A as <a class="trait" href="de/trait.MapAccess.html" title="trait serde::de::MapAccess">MapAccess</a>&lt;'de&gt;&gt;::<a class="associatedtype" href="de/trait.MapAccess.html#associatedtype.Error" title="type serde::de::MapAccess::Error">Error</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-SeqAccessDeserializer%3CA%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#1066-1084">source</a><a href="#impl-Deserializer%3C'de%3E-for-SeqAccessDeserializer%3CA%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.SeqAccessDeserializer.html" title="struct serde::de::value::SeqAccessDeserializer">SeqAccessDeserializer</a>&lt;A&gt;<div class="where">where
A: <a class="trait" href="de/trait.SeqAccess.html" title="trait serde::de::SeqAccess">SeqAccess</a>&lt;'de&gt;,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-6" class="associatedtype trait-impl"><a href="#associatedtype.Error-6" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = &lt;A as <a class="trait" href="de/trait.SeqAccess.html" title="trait serde::de::SeqAccess">SeqAccess</a>&lt;'de&gt;&gt;::<a class="associatedtype" href="de/trait.SeqAccess.html#associatedtype.Error" title="type serde::de::SeqAccess::Error">Error</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-BoolDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#293">source</a><a href="#impl-Deserializer%3C'de%3E-for-BoolDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.BoolDeserializer.html" title="struct serde::de::value::BoolDeserializer">BoolDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-7" class="associatedtype trait-impl"><a href="#associatedtype.Error-7" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-BorrowedBytesDeserializer%3C'de,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#856-874">source</a><a href="#impl-Deserializer%3C'de%3E-for-BorrowedBytesDeserializer%3C'de,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.BorrowedBytesDeserializer.html" title="struct serde::de::value::BorrowedBytesDeserializer">BorrowedBytesDeserializer</a>&lt;'de, E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-8" class="associatedtype trait-impl"><a href="#associatedtype.Error-8" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-BorrowedStrDeserializer%3C'de,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#506-538">source</a><a href="#impl-Deserializer%3C'de%3E-for-BorrowedStrDeserializer%3C'de,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.BorrowedStrDeserializer.html" title="struct serde::de::value::BorrowedStrDeserializer">BorrowedStrDeserializer</a>&lt;'de, E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-9" class="associatedtype trait-impl"><a href="#associatedtype.Error-9" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-CharDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#307">source</a><a href="#impl-Deserializer%3C'de%3E-for-CharDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.CharDeserializer.html" title="struct serde::de::value::CharDeserializer">CharDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-10" class="associatedtype trait-impl"><a href="#associatedtype.Error-10" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-F32Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#305">source</a><a href="#impl-Deserializer%3C'de%3E-for-F32Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.F32Deserializer.html" title="struct serde::de::value::F32Deserializer">F32Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-11" class="associatedtype trait-impl"><a href="#associatedtype.Error-11" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-F64Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#306">source</a><a href="#impl-Deserializer%3C'de%3E-for-F64Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.F64Deserializer.html" title="struct serde::de::value::F64Deserializer">F64Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-12" class="associatedtype trait-impl"><a href="#associatedtype.Error-12" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-I8Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#294">source</a><a href="#impl-Deserializer%3C'de%3E-for-I8Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.I8Deserializer.html" title="struct serde::de::value::I8Deserializer">I8Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-13" class="associatedtype trait-impl"><a href="#associatedtype.Error-13" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-I16Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#295">source</a><a href="#impl-Deserializer%3C'de%3E-for-I16Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.I16Deserializer.html" title="struct serde::de::value::I16Deserializer">I16Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-14" class="associatedtype trait-impl"><a href="#associatedtype.Error-14" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-I32Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#296">source</a><a href="#impl-Deserializer%3C'de%3E-for-I32Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.I32Deserializer.html" title="struct serde::de::value::I32Deserializer">I32Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-15" class="associatedtype trait-impl"><a href="#associatedtype.Error-15" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-I64Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#297">source</a><a href="#impl-Deserializer%3C'de%3E-for-I64Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.I64Deserializer.html" title="struct serde::de::value::I64Deserializer">I64Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-16" class="associatedtype trait-impl"><a href="#associatedtype.Error-16" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-I128Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#298">source</a><a href="#impl-Deserializer%3C'de%3E-for-I128Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.I128Deserializer.html" title="struct serde::de::value::I128Deserializer">I128Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-17" class="associatedtype trait-impl"><a href="#associatedtype.Error-17" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-IsizeDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#299">source</a><a href="#impl-Deserializer%3C'de%3E-for-IsizeDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.IsizeDeserializer.html" title="struct serde::de::value::IsizeDeserializer">IsizeDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-18" class="associatedtype trait-impl"><a href="#associatedtype.Error-18" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-StringDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#609-641">source</a><a href="#impl-Deserializer%3C'de%3E-for-StringDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.StringDeserializer.html" title="struct serde::de::value::StringDeserializer">StringDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-19" class="associatedtype trait-impl"><a href="#associatedtype.Error-19" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-U8Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#300">source</a><a href="#impl-Deserializer%3C'de%3E-for-U8Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.U8Deserializer.html" title="struct serde::de::value::U8Deserializer">U8Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-20" class="associatedtype trait-impl"><a href="#associatedtype.Error-20" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-U16Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#301">source</a><a href="#impl-Deserializer%3C'de%3E-for-U16Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.U16Deserializer.html" title="struct serde::de::value::U16Deserializer">U16Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-21" class="associatedtype trait-impl"><a href="#associatedtype.Error-21" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-U32Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#338-370">source</a><a href="#impl-Deserializer%3C'de%3E-for-U32Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.U32Deserializer.html" title="struct serde::de::value::U32Deserializer">U32Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-22" class="associatedtype trait-impl"><a href="#associatedtype.Error-22" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-U64Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#302">source</a><a href="#impl-Deserializer%3C'de%3E-for-U64Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.U64Deserializer.html" title="struct serde::de::value::U64Deserializer">U64Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-23" class="associatedtype trait-impl"><a href="#associatedtype.Error-23" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-U128Deserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#303">source</a><a href="#impl-Deserializer%3C'de%3E-for-U128Deserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.U128Deserializer.html" title="struct serde::de::value::U128Deserializer">U128Deserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-24" class="associatedtype trait-impl"><a href="#associatedtype.Error-24" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-UnitDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#151-176">source</a><a href="#impl-Deserializer%3C'de%3E-for-UnitDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.UnitDeserializer.html" title="struct serde::de::value::UnitDeserializer">UnitDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-25" class="associatedtype trait-impl"><a href="#associatedtype.Error-25" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-UsizeDeserializer%3CE%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#304">source</a><a href="#impl-Deserializer%3C'de%3E-for-UsizeDeserializer%3CE%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.UsizeDeserializer.html" title="struct serde::de::value::UsizeDeserializer">UsizeDeserializer</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-26" class="associatedtype trait-impl"><a href="#associatedtype.Error-26" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-MapDeserializer%3C'de,+I,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#1157-1198">source</a><a href="#impl-Deserializer%3C'de%3E-for-MapDeserializer%3C'de,+I,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.MapDeserializer.html" title="struct serde::de::value::MapDeserializer">MapDeserializer</a>&lt;'de, I, E&gt;<div class="where">where
I: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>,
I::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>: Pair,
&lt;I::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/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="de/trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,
&lt;I::<a class="associatedtype" href="https://doc.rust-lang.org/1.80.0/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="de/trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-27" class="associatedtype trait-impl"><a href="#associatedtype.Error-27" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Deserializer%3C'de%3E-for-SeqDeserializer%3CI,+E%3E" class="impl"><a class="src rightside" href="../src/serde/de/value.rs.html#931-953">source</a><a href="#impl-Deserializer%3C'de%3E-for-SeqDeserializer%3CI,+E%3E" class="anchor">§</a><h3 class="code-header">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="de/value/struct.SeqDeserializer.html" title="struct serde::de::value::SeqDeserializer">SeqDeserializer</a>&lt;I, E&gt;<div class="where">where
I: <a class="trait" href="https://doc.rust-lang.org/1.80.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = T&gt;,
T: <a class="trait" href="de/trait.IntoDeserializer.html" title="trait serde::de::IntoDeserializer">IntoDeserializer</a>&lt;'de, E&gt;,
E: <a class="trait" href="de/trait.Error.html" title="trait serde::de::Error">Error</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Error-28" class="associatedtype trait-impl"><a href="#associatedtype.Error-28" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></div></details></div><script src="../trait.impl/serde/de/trait.Deserializer.js" async></script></section></div></main></body></html>