-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathstruct.ByteArray.html
187 lines (167 loc) · 112 KB
/
struct.ByteArray.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<!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="Wrapper around `[u8; N]` to serialize and deserialize efficiently."><title>ByteArray in serde_bytes - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.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-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-46132b98.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="serde_bytes" data-themes="" data-resource-suffix="" data-rustdoc-version="1.85.0 (4d91de4e4 2025-02-17)" data-channel="1.85.0" data-search-js="search-75f5ac3e.js" data-settings-js="settings-0f613d39.js" ><script src="../static.files/storage-59e33391.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-893ab5e7.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc struct"><!--[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_bytes/index.html">serde_<wbr>bytes</a><span class="version">0.11.17</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Byte<wbr>Array</a></h2><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.bytes" title="bytes">bytes</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.from_ref" title="from_ref">from_ref</a></li><li><a href="#method.into_array" title="into_array">into_array</a></li><li><a href="#method.new" title="new">new</a></li></ul><h3><a href="#deref-methods-%5Bu8;+N%5D">Methods from Deref<<wbr>Target=[u8; N]></a></h3><ul class="block deref-methods"><li><a href="#method.as_ascii" title="as_ascii">as_ascii</a></li><li><a href="#method.as_ascii_unchecked" title="as_ascii_unchecked">as_ascii_unchecked</a></li><li><a href="#method.as_mut_slice" title="as_mut_slice">as_mut_slice</a></li><li><a href="#method.as_slice" title="as_slice">as_slice</a></li><li><a href="#method.each_mut" title="each_mut">each_mut</a></li><li><a href="#method.each_ref" title="each_ref">each_ref</a></li><li><a href="#method.rsplit_array_mut" title="rsplit_array_mut">rsplit_array_mut</a></li><li><a href="#method.rsplit_array_ref" title="rsplit_array_ref">rsplit_array_ref</a></li><li><a href="#method.split_array_mut" title="split_array_mut">split_array_mut</a></li><li><a href="#method.split_array_ref" title="split_array_ref">split_array_ref</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-AsMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" title="AsMut<[u8; N]>">AsMut<[u8; N]></a></li><li><a href="#impl-AsRef%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" title="AsRef<[u8; N]>">AsRef<[u8; N]></a></li><li><a href="#impl-Borrow%3CBytes%3E-for-ByteArray%3CN%3E" title="Borrow<Bytes>">Borrow<Bytes></a></li><li><a href="#impl-Borrow%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" title="Borrow<[u8; N]>">Borrow<[u8; N]></a></li><li><a href="#impl-BorrowMut%3CBytes%3E-for-ByteArray%3CN%3E" title="BorrowMut<Bytes>">BorrowMut<Bytes></a></li><li><a href="#impl-BorrowMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" title="BorrowMut<[u8; N]>">BorrowMut<[u8; N]></a></li><li><a href="#impl-Clone-for-ByteArray%3CN%3E" title="Clone">Clone</a></li><li><a href="#impl-Copy-for-ByteArray%3CN%3E" title="Copy">Copy</a></li><li><a href="#impl-Debug-for-ByteArray%3CN%3E" title="Debug">Debug</a></li><li><a href="#impl-Default-for-ByteArray%3CN%3E" title="Default">Default</a></li><li><a href="#impl-Deref-for-ByteArray%3CN%3E" title="Deref">Deref</a></li><li><a href="#impl-DerefMut-for-ByteArray%3CN%3E" title="DerefMut">DerefMut</a></li><li><a href="#impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E" title="Deserialize<'de>">Deserialize<'de></a></li><li><a href="#impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E-1" title="Deserialize<'de>">Deserialize<'de></a></li><li><a href="#impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E" title="Deserialize<'de>">Deserialize<'de></a></li><li><a href="#impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E-1" title="Deserialize<'de>">Deserialize<'de></a></li><li><a href="#impl-Eq-for-ByteArray%3CN%3E" title="Eq">Eq</a></li><li><a href="#impl-From%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" title="From<[u8; N]>">From<[u8; N]></a></li><li><a href="#impl-Hash-for-ByteArray%3CN%3E" title="Hash">Hash</a></li><li><a href="#impl-IntoIterator-for-%26ByteArray%3CN%3E" title="IntoIterator">IntoIterator</a></li><li><a href="#impl-IntoIterator-for-%26mut+ByteArray%3CN%3E" title="IntoIterator">IntoIterator</a></li><li><a href="#impl-IntoIterator-for-ByteArray%3CN%3E" title="IntoIterator">IntoIterator</a></li><li><a href="#impl-Ord-for-ByteArray%3CN%3E" title="Ord">Ord</a></li><li><a href="#impl-PartialEq%3CRhs%3E-for-ByteArray%3CN%3E" title="PartialEq<Rhs>">PartialEq<Rhs></a></li><li><a href="#impl-PartialOrd%3CRhs%3E-for-ByteArray%3CN%3E" title="PartialOrd<Rhs>">PartialOrd<Rhs></a></li><li><a href="#impl-Serialize-for-ByteArray%3CN%3E" title="Serialize">Serialize</a></li><li><a href="#impl-Serialize-for-ByteArray%3CN%3E-1" title="Serialize">Serialize</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-ByteArray%3CN%3E" title="Freeze">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-ByteArray%3CN%3E" title="RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send-for-ByteArray%3CN%3E" title="Send">Send</a></li><li><a href="#impl-Sync-for-ByteArray%3CN%3E" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-ByteArray%3CN%3E" title="Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe-for-ByteArray%3CN%3E" title="UnwindSafe">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-CloneToUninit-for-T" title="CloneToUninit">CloneToUninit</a></li><li><a href="#impl-DeserializeOwned-for-T" title="DeserializeOwned">DeserializeOwned</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-Receiver-for-P" title="Receiver">Receiver</a></li><li><a href="#impl-ToOwned-for-T" title="ToOwned">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate serde_<wbr>bytes</a></h2></div></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"><span class="rustdoc-breadcrumbs"><a href="index.html">serde_bytes</a></span><h1>Struct <span class="struct">ByteArray</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/serde_bytes/bytearray.rs.html#40-42">Source</a> </span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(transparent)]</div>pub struct ByteArray<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> {
bytes: [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>],
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Wrapper around <code>[u8; N]</code> to serialize and deserialize efficiently.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::collections::HashMap;
<span class="kw">use </span>std::io;
<span class="kw">use </span>serde_bytes::ByteArray;
<span class="kw">fn </span>deserialize_bytearrays() -> <span class="prelude-ty">Result</span><(), bincode::error::DecodeError> {
<span class="kw">let </span>example_data = [<span class="number">2</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">116</span>, <span class="number">119</span>, <span class="number">111</span>, <span class="number">1</span>, <span class="number">3</span>, <span class="number">111</span>, <span class="number">110</span>, <span class="number">101</span>];
<span class="kw">let </span>map: HashMap<u32, ByteArray<<span class="number">3</span>>>;
(map, <span class="kw">_</span>) = bincode::serde::decode_from_slice(
<span class="kw-2">&</span>example_data,
bincode::config::standard(),
)<span class="question-mark">?</span>;
<span class="macro">println!</span>(<span class="string">"{:?}"</span>, map);
<span class="prelude-val">Ok</span>(())
}</code></pre></div>
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.bytes" class="structfield section-header"><a href="#structfield.bytes" class="anchor field">§</a><code>bytes: [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</code></span><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#44-58">Source</a><a href="#impl-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#46-48">Source</a><h4 class="code-header">pub const fn <a href="#method.new" class="fn">new</a>(bytes: [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]) -> Self</h4></section></summary><div class="docblock"><p>Wrap an existing <a href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html" title="primitive array">array</a> into a <code>ByteArray</code>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.into_array" class="method"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#51-53">Source</a><h4 class="code-header">pub const fn <a href="#method.into_array" class="fn">into_array</a>(self) -> [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class="docblock"><p>Unwrap the byte array underlying this <code>ByteArray</code>.</p>
</div></details><section id="method.from_ref" class="method"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#55-57">Source</a><h4 class="code-header">fn <a href="#method.from_ref" class="fn">from_ref</a>(bytes: &[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]) -> &Self</h4></section></div></details></div><details class="toggle big-toggle" open><summary><h2 id="deref-methods-%5Bu8;+N%5D" class="section-header"><span>Methods from <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a><Target = [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]></span><a href="#deref-methods-%5Bu8;+N%5D" class="anchor">§</a></h2></summary><div id="deref-methods-%5Bu8;+N%5D-1" class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_ascii" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/ascii.rs.html#22">Source</a><h4 class="code-header">pub fn <a href="#method.as_ascii" class="fn">as_ascii</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&[<a class="enum" href="https://doc.rust-lang.org/1.85.0/core/ascii/ascii_char/enum.AsciiChar.html" title="enum core::ascii::ascii_char::AsciiChar">AsciiChar</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]></h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>ascii_char</code>)</span></div></span></summary><div class="docblock"><p>Converts this array of bytes into an array of ASCII characters,
or returns <code>None</code> if any of the characters is non-ASCII.</p>
<h5 id="examples"><a class="doc-anchor" href="#examples">§</a>Examples</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(ascii_char)]
</span><span class="kw">const </span>HEX_DIGITS: [std::ascii::Char; <span class="number">16</span>] =
<span class="kw-2">*</span><span class="string">b"0123456789abcdef"</span>.as_ascii().unwrap();
<span class="macro">assert_eq!</span>(HEX_DIGITS[<span class="number">1</span>].as_str(), <span class="string">"1"</span>);
<span class="macro">assert_eq!</span>(HEX_DIGITS[<span class="number">10</span>].as_str(), <span class="string">"a"</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_ascii_unchecked" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/ascii.rs.html#40">Source</a><h4 class="code-header">pub unsafe fn <a href="#method.as_ascii_unchecked" class="fn">as_ascii_unchecked</a>(&self) -> &[<a class="enum" href="https://doc.rust-lang.org/1.85.0/core/ascii/ascii_char/enum.AsciiChar.html" title="enum core::ascii::ascii_char::AsciiChar">AsciiChar</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>ascii_char</code>)</span></div></span></summary><div class="docblock"><p>Converts this array of bytes into an array of ASCII characters,
without checking whether they’re valid.</p>
<h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
<p>Every byte in the array must be in <code>0..=127</code>, or else this is UB.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_slice" class="method"><span class="rightside"><span class="since" title="Stable since Rust version 1.57.0">1.57.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#563">Source</a></span><h4 class="code-header">pub fn <a href="#method.as_slice" class="fn">as_slice</a>(&self) -> &<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a></h4></section></summary><div class="docblock"><p>Returns a slice containing the entire array. Equivalent to <code>&s[..]</code>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_mut_slice" class="method"><span class="rightside"><span class="since" title="Stable since Rust version 1.57.0">1.57.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#571">Source</a></span><h4 class="code-header">pub fn <a href="#method.as_mut_slice" class="fn">as_mut_slice</a>(&mut self) -> &mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a></h4></section></summary><div class="docblock"><p>Returns a mutable slice containing the entire array. Equivalent to
<code>&mut s[..]</code>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.each_ref" class="method"><span class="rightside"><span class="since" title="Stable since Rust version 1.77.0">1.77.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#601">Source</a></span><h4 class="code-header">pub fn <a href="#method.each_ref" class="fn">each_ref</a>(&self) -> [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&T</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class="docblock"><p>Borrows each element and returns an array of references with the same
size as <code>self</code>.</p>
<h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>floats = [<span class="number">3.1</span>, <span class="number">2.7</span>, -<span class="number">1.0</span>];
<span class="kw">let </span>float_refs: [<span class="kw-2">&</span>f64; <span class="number">3</span>] = floats.each_ref();
<span class="macro">assert_eq!</span>(float_refs, [<span class="kw-2">&</span><span class="number">3.1</span>, <span class="kw-2">&</span><span class="number">2.7</span>, <span class="kw-2">&</span>-<span class="number">1.0</span>]);</code></pre></div>
<p>This method is particularly useful if combined with other methods, like
<a href="#method.map"><code>map</code></a>. This way, you can avoid moving the original
array if its elements are not <a href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Copy.html" title="trait core::marker::Copy"><code>Copy</code></a>.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span>strings = [<span class="string">"Ferris"</span>.to_string(), <span class="string">"♥"</span>.to_string(), <span class="string">"Rust"</span>.to_string()];
<span class="kw">let </span>is_ascii = strings.each_ref().map(|s| s.is_ascii());
<span class="macro">assert_eq!</span>(is_ascii, [<span class="bool-val">true</span>, <span class="bool-val">false</span>, <span class="bool-val">true</span>]);
<span class="comment">// We can still access the original array: it has not been moved.
</span><span class="macro">assert_eq!</span>(strings.len(), <span class="number">3</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.each_mut" class="method"><span class="rightside"><span class="since" title="Stable since Rust version 1.77.0">1.77.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#632">Source</a></span><h4 class="code-header">pub fn <a href="#method.each_mut" class="fn">each_mut</a>(&mut self) -> [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&mut T</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class="docblock"><p>Borrows each element mutably and returns an array of mutable references
with the same size as <code>self</code>.</p>
<h5 id="example-1"><a class="doc-anchor" href="#example-1">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code>
<span class="kw">let </span><span class="kw-2">mut </span>floats = [<span class="number">3.1</span>, <span class="number">2.7</span>, -<span class="number">1.0</span>];
<span class="kw">let </span>float_refs: [<span class="kw-2">&mut </span>f64; <span class="number">3</span>] = floats.each_mut();
<span class="kw-2">*</span>float_refs[<span class="number">0</span>] = <span class="number">0.0</span>;
<span class="macro">assert_eq!</span>(float_refs, [<span class="kw-2">&mut </span><span class="number">0.0</span>, <span class="kw-2">&mut </span><span class="number">2.7</span>, <span class="kw-2">&mut </span>-<span class="number">1.0</span>]);
<span class="macro">assert_eq!</span>(floats, [<span class="number">0.0</span>, <span class="number">2.7</span>, -<span class="number">1.0</span>]);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.split_array_ref" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#688">Source</a><h4 class="code-header">pub fn <a href="#method.split_array_ref" class="fn">split_array_ref</a><const M: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>>(&self) -> (&<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">[T; M]</a>, &<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a>)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>split_array</code>)</span></div></span></summary><div class="docblock"><p>Divides one array reference into two at an index.</p>
<p>The first will contain all indices from <code>[0, M)</code> (excluding
the index <code>M</code> itself) and the second will contain all
indices from <code>[M, N)</code> (excluding the index <code>N</code> itself).</p>
<h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
<p>Panics if <code>M > N</code>.</p>
<h5 id="examples-1"><a class="doc-anchor" href="#examples-1">§</a>Examples</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(split_array)]
</span><span class="kw">let </span>v = [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>];
{
<span class="kw">let </span>(left, right) = v.split_array_ref::<<span class="number">0</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
}
{
<span class="kw">let </span>(left, right) = v.split_array_ref::<<span class="number">2</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[<span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
}
{
<span class="kw">let </span>(left, right) = v.split_array_ref::<<span class="number">6</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[]);
}</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.split_array_mut" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#721">Source</a><h4 class="code-header">pub fn <a href="#method.split_array_mut" class="fn">split_array_mut</a><const M: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>>(&mut self) -> (&mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">[T; M]</a>, &mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a>)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>split_array</code>)</span></div></span></summary><div class="docblock"><p>Divides one mutable array reference into two at an index.</p>
<p>The first will contain all indices from <code>[0, M)</code> (excluding
the index <code>M</code> itself) and the second will contain all
indices from <code>[M, N)</code> (excluding the index <code>N</code> itself).</p>
<h5 id="panics-1"><a class="doc-anchor" href="#panics-1">§</a>Panics</h5>
<p>Panics if <code>M > N</code>.</p>
<h5 id="examples-2"><a class="doc-anchor" href="#examples-2">§</a>Examples</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(split_array)]
</span><span class="kw">let </span><span class="kw-2">mut </span>v = [<span class="number">1</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>, <span class="number">5</span>, <span class="number">6</span>];
<span class="kw">let </span>(left, right) = v.split_array_mut::<<span class="number">2</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&mut </span>[<span class="number">1</span>, <span class="number">0</span>][..]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&mut </span>[<span class="number">3</span>, <span class="number">0</span>, <span class="number">5</span>, <span class="number">6</span>]);
left[<span class="number">1</span>] = <span class="number">2</span>;
right[<span class="number">1</span>] = <span class="number">4</span>;
<span class="macro">assert_eq!</span>(v, [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.rsplit_array_ref" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#766">Source</a><h4 class="code-header">pub fn <a href="#method.rsplit_array_ref" class="fn">rsplit_array_ref</a><const M: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>>(&self) -> (&<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a>, &<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">[T; M]</a>)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>split_array</code>)</span></div></span></summary><div class="docblock"><p>Divides one array reference into two at an index from the end.</p>
<p>The first will contain all indices from <code>[0, N - M)</code> (excluding
the index <code>N - M</code> itself) and the second will contain all
indices from <code>[N - M, N)</code> (excluding the index <code>N</code> itself).</p>
<h5 id="panics-2"><a class="doc-anchor" href="#panics-2">§</a>Panics</h5>
<p>Panics if <code>M > N</code>.</p>
<h5 id="examples-3"><a class="doc-anchor" href="#examples-3">§</a>Examples</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(split_array)]
</span><span class="kw">let </span>v = [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>];
{
<span class="kw">let </span>(left, right) = v.rsplit_array_ref::<<span class="number">0</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[]);
}
{
<span class="kw">let </span>(left, right) = v.rsplit_array_ref::<<span class="number">2</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[<span class="number">5</span>, <span class="number">6</span>]);
}
{
<span class="kw">let </span>(left, right) = v.rsplit_array_ref::<<span class="number">6</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&</span>[]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
}</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.rsplit_array_mut" class="method"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/array/mod.rs.html#799">Source</a><h4 class="code-header">pub fn <a href="#method.rsplit_array_mut" class="fn">rsplit_array_mut</a><const M: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>>(&mut self) -> (&mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.slice.html">[T]</a>, &mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">[T; M]</a>)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>split_array</code>)</span></div></span></summary><div class="docblock"><p>Divides one mutable array reference into two at an index from the end.</p>
<p>The first will contain all indices from <code>[0, N - M)</code> (excluding
the index <code>N - M</code> itself) and the second will contain all
indices from <code>[N - M, N)</code> (excluding the index <code>N</code> itself).</p>
<h5 id="panics-3"><a class="doc-anchor" href="#panics-3">§</a>Panics</h5>
<p>Panics if <code>M > N</code>.</p>
<h5 id="examples-4"><a class="doc-anchor" href="#examples-4">§</a>Examples</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(split_array)]
</span><span class="kw">let </span><span class="kw-2">mut </span>v = [<span class="number">1</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>, <span class="number">5</span>, <span class="number">6</span>];
<span class="kw">let </span>(left, right) = v.rsplit_array_mut::<<span class="number">4</span>>();
<span class="macro">assert_eq!</span>(left, <span class="kw-2">&mut </span>[<span class="number">1</span>, <span class="number">0</span>]);
<span class="macro">assert_eq!</span>(right, <span class="kw-2">&mut </span>[<span class="number">3</span>, <span class="number">0</span>, <span class="number">5</span>, <span class="number">6</span>][..]);
left[<span class="number">1</span>] = <span class="number">2</span>;
right[<span class="number">1</span>] = <span class="number">4</span>;
<span class="macro">assert_eq!</span>(v, [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);</code></pre></div>
</div></details></div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#78-82">Source</a><a href="#impl-AsMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_mut" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#79-81">Source</a><a href="#method.as_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.AsMut.html#tymethod.as_mut" class="fn">as_mut</a>(&mut self) -> &mut [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class='docblock'>Converts this type into a mutable reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsRef%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#72-76">Source</a><a href="#impl-AsRef%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_ref" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#73-75">Source</a><a href="#method.as_ref" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.AsRef.html#tymethod.as_ref" class="fn">as_ref</a>(&self) -> &[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class='docblock'>Converts this type into a shared reference of the (usually inferred) input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Borrow%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#84-88">Source</a><a href="#impl-Borrow%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#85-87">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> &[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Borrow%3CBytes%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#110-114">Source</a><a href="#impl-Borrow%3CBytes%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><<a class="struct" href="struct.Bytes.html" title="struct serde_bytes::Bytes">Bytes</a>> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow-1" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#111-113">Source</a><a href="#method.borrow-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> &<a class="struct" href="struct.Bytes.html" title="struct serde_bytes::Bytes">Bytes</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BorrowMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#90-94">Source</a><a href="#impl-BorrowMut%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#91-93">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> &mut [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BorrowMut%3CBytes%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#116-120">Source</a><a href="#impl-BorrowMut%3CBytes%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><<a class="struct" href="struct.Bytes.html" title="struct serde_bytes::Bytes">Bytes</a>> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut-1" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#117-119">Source</a><a href="#method.borrow_mut-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> &mut <a class="struct" href="struct.Bytes.html" title="struct serde_bytes::Bytes">Bytes</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#impl-Clone-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/clone.rs.html#174">Source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: &Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#60-64">Source</a><a href="#impl-Debug-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#61-63">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.85.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.85.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.85.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Default-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#66-70">Source</a><a href="#impl-Default-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.default" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#67-69">Source</a><a href="#method.default" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/default/trait.Default.html#tymethod.default" class="fn">default</a>() -> Self</h4></section></summary><div class='docblock'>Returns the “default value” for a type. <a href="https://doc.rust-lang.org/1.85.0/core/default/trait.Default.html#tymethod.default">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deref-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#96-102">Source</a><a href="#impl-Deref-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Target" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#97">Source</a><a href="#associatedtype.Target" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html#associatedtype.Target" class="associatedtype">Target</a> = [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]</h4></section></summary><div class='docblock'>The resulting type after dereferencing.</div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#99-101">Source</a><a href="#method.deref" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html#tymethod.deref" class="fn">deref</a>(&self) -> &Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html#associatedtype.Target" title="type core::ops::deref::Deref::Target">Target</a></h4></section></summary><div class='docblock'>Dereferences the value.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-DerefMut-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#104-108">Source</a><a href="#impl-DerefMut-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#105-107">Source</a><a href="#method.deref_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.DerefMut.html#tymethod.deref_mut" class="fn">deref_mut</a>(&mut self) -> &mut Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html#associatedtype.Target" title="type core::ops::deref::Deref::Target">Target</a></h4></section></summary><div class='docblock'>Mutably dereferences the value.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#267-274">Source</a><a href="#impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<'a, 'de: 'a, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="../serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for &'a <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize-1" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#268-273">Source</a><a href="#method.deserialize-1" class="anchor">§</a><h4 class="code-header">fn <a href="../serde/de/trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a><D>(deserializer: D) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, D::<a class="associatedtype" href="../serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>><div class="where">where
D: <a class="trait" href="../serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="../serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E-1" class="impl"><a class="src rightside" href="../src/serde_bytes/de.rs.html#96-104">Source</a><a href="#impl-Deserialize%3C'de%3E-for-%26ByteArray%3CN%3E-1" class="anchor">§</a><h3 class="code-header">impl<'de: 'a, 'a, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="trait.Deserialize.html" title="trait serde_bytes::Deserialize">Deserialize</a><'de> for &'a <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><section id="method.deserialize-3" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/de.rs.html#97-103">Source</a><a href="#method.deserialize-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a><D>(deserializer: D) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, D::<a class="associatedtype" href="../serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>><div class="where">where
D: <a class="trait" href="../serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#231-238">Source</a><a href="#impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<'de, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="../serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#232-237">Source</a><a href="#method.deserialize" class="anchor">§</a><h4 class="code-header">fn <a href="../serde/de/trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a><D>(deserializer: D) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N>, D::<a class="associatedtype" href="../serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>><div class="where">where
D: <a class="trait" href="../serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="../serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E-1" class="impl"><a class="src rightside" href="../src/serde_bytes/de.rs.html#86-94">Source</a><a href="#impl-Deserialize%3C'de%3E-for-ByteArray%3CN%3E-1" class="anchor">§</a><h3 class="code-header">impl<'de, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="trait.Deserialize.html" title="trait serde_bytes::Deserialize">Deserialize</a><'de> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><section id="method.deserialize-2" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/de.rs.html#87-93">Source</a><a href="#method.deserialize-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a><D>(deserializer: D) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, D::<a class="associatedtype" href="../serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>><div class="where">where
D: <a class="trait" href="../serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#122-126">Source</a><a href="#impl-From%3C%5Bu8;+N%5D%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#123-125">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(bytes: [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Hash-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#146-150">Source</a><a href="#impl-Hash-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.hash" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#147-149">Source</a><a href="#method.hash" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hash.html#tymethod.hash" class="fn">hash</a><H: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>>(&self, state: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&mut H</a>)</h4></section></summary><div class='docblock'>Feeds this value into the given <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hash.html#tymethod.hash">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.hash_slice" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.3.0">1.3.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/hash/mod.rs.html#235-237">Source</a></span><a href="#method.hash_slice" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hash.html#method.hash_slice" class="fn">hash_slice</a><H>(data: &[Self], state: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&mut H</a>)<div class="where">where
H: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
Self: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/1.85.0/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-%26ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#161-168">Source</a><a href="#impl-IntoIterator-for-%26ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<'a, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for &'a <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#162">Source</a><a href="#associatedtype.Item-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item" class="associatedtype">Item</a> = &'a <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a></h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="toggle" open><summary><section id="associatedtype.IntoIter-1" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#163">Source</a><a href="#associatedtype.IntoIter-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" class="associatedtype">IntoIter</a> = <&'a [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>] as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="toggle method-toggle" open><summary><section id="method.into_iter-1" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#165-167">Source</a><a href="#method.into_iter-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter" class="fn">into_iter</a>(self) -> Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Creates an iterator from a value. <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-%26mut+ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#170-177">Source</a><a href="#impl-IntoIterator-for-%26mut+ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<'a, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for &'a mut <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-2" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#171">Source</a><a href="#associatedtype.Item-2" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item" class="associatedtype">Item</a> = &'a mut <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a></h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="toggle" open><summary><section id="associatedtype.IntoIter-2" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#172">Source</a><a href="#associatedtype.IntoIter-2" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" class="associatedtype">IntoIter</a> = <&'a mut [<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>] as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="toggle method-toggle" open><summary><section id="method.into_iter-2" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#174-176">Source</a><a href="#method.into_iter-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter" class="fn">into_iter</a>(self) -> Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Creates an iterator from a value. <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#152-159">Source</a><a href="#impl-IntoIterator-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#153">Source</a><a href="#associatedtype.Item" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item" class="associatedtype">Item</a> = <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a></h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="toggle" open><summary><section id="associatedtype.IntoIter" class="associatedtype trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#154">Source</a><a href="#associatedtype.IntoIter" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" class="associatedtype">IntoIter</a> = <[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>] as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="toggle method-toggle" open><summary><section id="method.into_iter" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#156-158">Source</a><a href="#method.into_iter" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter" class="fn">into_iter</a>(self) -> Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></h4></section></summary><div class='docblock'>Creates an iterator from a value. <a href="https://doc.rust-lang.org/1.85.0/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Ord-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#impl-Ord-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#tymethod.cmp" class="fn">cmp</a>(&self, other: &<a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N>) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'>This method returns an <a href="https://doc.rust-lang.org/1.85.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering"><code>Ordering</code></a> between <code>self</code> and <code>other</code>. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#980-982">Source</a></span><a href="#method.max" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.max" class="fn">max</a>(self, other: Self) -> Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1001-1003">Source</a></span><a href="#method.min" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.min" class="fn">min</a>(self, other: Self) -> Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the minimum of two values. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clamp" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.50.0">1.50.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1027-1029">Source</a></span><a href="#method.clamp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.clamp" class="fn">clamp</a>(self, min: Self, max: Self) -> Self<div class="where">where
Self: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Restrict a value to a certain interval. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Ord.html#method.clamp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CRhs%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#128-135">Source</a><a href="#impl-PartialEq%3CRhs%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<Rhs, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><Rhs> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N><div class="where">where
Rhs: ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#132-134">Source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#261">Source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests for <code>!=</code>. The default implementation is almost always sufficient,
and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CRhs%3E-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#137-144">Source</a><a href="#impl-PartialOrd%3CRhs%3E-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<Rhs, const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><Rhs> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N><div class="where">where
Rhs: ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><[<a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.array.html">N</a>]>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#141-143">Source</a><a href="#method.partial_cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.85.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>></h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1335">Source</a></span><a href="#method.lt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests less than (for <code>self</code> and <code>other</code>) and is used by the <code><</code> operator. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1353">Source</a></span><a href="#method.le" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the
<code><=</code> operator. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1371">Source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>></code>
operator. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.85.0/src/core/cmp.rs.html#1389">Source</a></span><a href="#method.ge" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by
the <code>>=</code> operator. <a href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Serialize-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#179-186">Source</a><a href="#impl-Serialize-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="../serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.serialize" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#180-185">Source</a><a href="#method.serialize" class="anchor">§</a><h4 class="code-header">fn <a href="../serde/ser/trait.Serialize.html#tymethod.serialize" class="fn">serialize</a><S>(&self, serializer: S) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><S::<a class="associatedtype" href="../serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, S::<a class="associatedtype" href="../serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>><div class="where">where
S: <a class="trait" href="../serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>,</div></h4></section></summary><div class='docblock'>Serialize this value into the given Serde serializer. <a href="../serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Serialize-for-ByteArray%3CN%3E-1" class="impl"><a class="src rightside" href="../src/serde_bytes/ser.rs.html#63-70">Source</a><a href="#impl-Serialize-for-ByteArray%3CN%3E-1" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="trait.Serialize.html" title="trait serde_bytes::Serialize">Serialize</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></summary><div class="impl-items"><section id="method.serialize-1" class="method trait-impl"><a class="src rightside" href="../src/serde_bytes/ser.rs.html#64-69">Source</a><a href="#method.serialize-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Serialize.html#tymethod.serialize" class="fn">serialize</a><S>(&self, serializer: S) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><S::<a class="associatedtype" href="../serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, S::<a class="associatedtype" href="../serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>><div class="where">where
S: <a class="trait" href="../serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>,</div></h4></section></div></details><section id="impl-Copy-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#impl-Copy-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-Eq-for-ByteArray%3CN%3E" class="impl"><a class="src rightside" href="../src/serde_bytes/bytearray.rs.html#38">Source</a><a href="#impl-Eq-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-ByteArray%3CN%3E" class="impl"><a href="#impl-Freeze-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-RefUnwindSafe-for-ByteArray%3CN%3E" class="impl"><a href="#impl-RefUnwindSafe-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-Send-for-ByteArray%3CN%3E" class="impl"><a href="#impl-Send-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-Sync-for-ByteArray%3CN%3E" class="impl"><a href="#impl-Sync-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-Unpin-for-ByteArray%3CN%3E" class="impl"><a href="#impl-Unpin-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section><section id="impl-UnwindSafe-for-ByteArray%3CN%3E" class="impl"><a href="#impl-UnwindSafe-for-ByteArray%3CN%3E" class="anchor">§</a><h3 class="code-header">impl<const N: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.usize.html">usize</a>> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.ByteArray.html" title="struct serde_bytes::ByteArray">ByteArray</a><N></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.85.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.85.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/borrow.rs.html#209">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow-2" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/borrow.rs.html#211">Source</a><a href="#method.borrow-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/borrow.rs.html#217">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut-2" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/borrow.rs.html#218">Source</a><a href="#method.borrow_mut-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.85.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CloneToUninit-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/clone.rs.html#273">Source</a><a href="#impl-CloneToUninit-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/clone/trait.CloneToUninit.html" title="trait core::clone::CloneToUninit">CloneToUninit</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone_to_uninit" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/clone.rs.html#275">Source</a><a href="#method.clone_to_uninit" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit" class="fn">clone_to_uninit</a>(&self, dst: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.u8.html">u8</a>)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>clone_to_uninit</code>)</span></div></span><div class='docblock'>Performs copy-assignment from <code>self</code> to <code>dst</code>. <a href="https://doc.rust-lang.org/1.85.0/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#767">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#770">Source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#750-752">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#760">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Receiver-for-P" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/ops/deref.rs.html#418-420">Source</a><a href="#impl-Receiver-for-P" class="anchor">§</a><h3 class="code-header">impl<P, T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Receiver.html" title="trait core::ops::deref::Receiver">Receiver</a> for P<div class="where">where
P: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a><Target = T> + ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
T: ?<a class="trait" href="https://doc.rust-lang.org/1.85.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Target-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/ops/deref.rs.html#422">Source</a><a href="#associatedtype.Target-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/ops/deref/trait.Receiver.html#associatedtype.Target" class="associatedtype">Target</a> = T</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>arbitrary_self_types</code>)</span></div></span><div class='docblock'>The target type on which the method may be called.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/alloc/borrow.rs.html#82-84">Source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/alloc/borrow.rs.html#86">Source</a><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/alloc/borrow.rs.html#87">Source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/alloc/borrow.rs.html#91">Source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.85.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.85.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#807-809">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#811">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#814">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#792-794">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#796">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.85.0/src/core/convert/mod.rs.html#799">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.85.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><section id="impl-DeserializeOwned-for-T" class="impl"><a class="src rightside" href="../src/serde/de/mod.rs.html#614">Source</a><a href="#impl-DeserializeOwned-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../serde/de/trait.DeserializeOwned.html" title="trait serde::de::DeserializeOwned">DeserializeOwned</a> for T<div class="where">where
T: for<'de> <a class="trait" href="../serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de>,</div></h3></section></div></section></div></main></body></html>