Files
google-apis-rs/bytes/trait.Buf.html
2021-04-02 00:20:57 +08:00

495 lines
123 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

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

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Buf` trait in crate `bytes`."><meta name="keywords" content="rust, rustlang, rust-lang, Buf"><title>bytes::Buf - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../ayu.css" disabled ><script id="default-settings"></script><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../favicon.svg">
<link rel="alternate icon" type="image/png" href="../favicon-16x16.png">
<link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../bytes/index.html'><div class='logo-container rust-logo'><img src='../rust-logo.png' alt='logo'></div></a><p class="location">Trait Buf</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.chunk">chunk</a><a href="#tymethod.advance">advance</a><a href="#tymethod.remaining">remaining</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.chain">chain</a><a href="#method.reader">reader</a><a href="#method.take">take</a><a href="#method.copy_to_slice">copy_to_slice</a><a href="#method.chunks_vectored">chunks_vectored</a><a href="#method.has_remaining">has_remaining</a><a href="#method.get_u8">get_u8</a><a href="#method.get_i8">get_i8</a><a href="#method.get_u16">get_u16</a><a href="#method.get_u16_le">get_u16_le</a><a href="#method.get_i16">get_i16</a><a href="#method.get_i16_le">get_i16_le</a><a href="#method.get_u32">get_u32</a><a href="#method.get_u32_le">get_u32_le</a><a href="#method.get_i32">get_i32</a><a href="#method.get_i32_le">get_i32_le</a><a href="#method.get_u64">get_u64</a><a href="#method.get_u64_le">get_u64_le</a><a href="#method.get_i64">get_i64</a><a href="#method.get_i64_le">get_i64_le</a><a href="#method.get_u128">get_u128</a><a href="#method.get_u128_le">get_u128_le</a><a href="#method.get_i128">get_i128</a><a href="#method.get_i128_le">get_i128_le</a><a href="#method.get_uint">get_uint</a><a href="#method.get_uint_le">get_uint_le</a><a href="#method.get_int">get_int</a><a href="#method.get_int_le">get_int_le</a><a href="#method.get_f32">get_f32</a><a href="#method.get_f32_le">get_f32_le</a><a href="#method.get_f64">get_f64</a><a href="#method.get_f64_le">get_f64_le</a><a href="#method.copy_to_bytes">copy_to_bytes</a></div><a class="sidebar-title" href="#foreign-impls">Implementations on Foreign Types</a><div class="sidebar-links"><a href="#impl-Buf-for-%26%5Bu8%5D">&amp;[u8]</a><a href="#impl-Buf-for-%26mut%20T">&amp;mut T</a><a href="#impl-Buf-for-Box%3CT%3E">Box&lt;T&gt;</a><a href="#impl-Buf-for-Cursor%3CT%3E">Cursor&lt;T&gt;</a><a href="#impl-Buf-for-VecDeque%3Cu8%3E">VecDeque&lt;u8&gt;</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class="location"><a href="index.html">bytes</a></p><div id="sidebar-vars" data-name="Buf" data-ty="trait" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" class="help-button">?</button>
<a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="in-band">Trait <a href="index.html">bytes</a>::<wbr><a class="trait" href="">Buf</a></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#76-903" title="goto source code">[src]</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust trait">pub trait Buf {
fn <a href="#tymethod.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
<div class="item-spacer"></div> fn <a href="#tymethod.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span>;
<div class="item-spacer"></div> fn <a href="#tymethod.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>);
fn <a href="#method.chunks_vectored" class="fnname">chunks_vectored</a>&lt;'a&gt;(&amp;'a self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a>&lt;'a&gt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.has_remaining" class="fnname">has_remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.copy_to_slice" class="fnname">copy_to_slice</a>(&amp;mut self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u8" class="fnname">get_u8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i8" class="fnname">get_i8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u16" class="fnname">get_u16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u16_le" class="fnname">get_u16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i16" class="fnname">get_i16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i16_le" class="fnname">get_i16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u32" class="fnname">get_u32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u32_le" class="fnname">get_u32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i32" class="fnname">get_i32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i32_le" class="fnname">get_i32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u64" class="fnname">get_u64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u64_le" class="fnname">get_u64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i64" class="fnname">get_i64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i64_le" class="fnname">get_i64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u128" class="fnname">get_u128</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_u128_le" class="fnname">get_u128_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i128" class="fnname">get_i128</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_i128_le" class="fnname">get_i128_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_uint" class="fnname">get_uint</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_uint_le" class="fnname">get_uint_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_int" class="fnname">get_int</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_int_le" class="fnname">get_int_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_f32" class="fnname">get_f32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_f32_le" class="fnname">get_f32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_f64" class="fnname">get_f64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.get_f64_le" class="fnname">get_f64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.copy_to_bytes" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a> { ... }
<div class="item-spacer"></div> fn <a href="#method.take" class="fnname">take</a>(self, limit: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/buf/struct.Take.html" title="struct bytes::buf::Take">Take</a>&lt;Self&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a></span>,
{ ... }
<div class="item-spacer"></div> fn <a href="#method.chain" class="fnname">chain</a>&lt;U:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a>&gt;(self, next: U) -&gt; <a class="struct" href="../bytes/buf/struct.Chain.html" title="struct bytes::buf::Chain">Chain</a>&lt;Self, U&gt;<br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a></span>,
{ ... }
<div class="item-spacer"></div> fn <a href="#method.reader" class="fnname">reader</a>(self) -&gt; <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;Self&gt;<span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;B&gt;</h3><code class="content"><span class="where fmt-newline">impl&lt;B:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;B&gt;</span></code></span></div></span></span><br>&nbsp;&nbsp;&nbsp; <span class="where">where<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a></span>,
{ ... }
}</pre></div><div class="docblock"><p>Read bytes from a buffer.</p>
<p>A buffer stores bytes in memory such that read operations are infallible.
The underlying storage may or may not be in contiguous memory. A <code>Buf</code> value
is a cursor into the buffer. Reading from <code>Buf</code> advances the cursor
position. It can be thought of as an efficient <code>Iterator</code> for collections of
bytes.</p>
<p>The simplest <code>Buf</code> is a <code>&amp;[u8]</code>.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="string">b&#39;h&#39;</span>, <span class="ident">buf</span>.<span class="ident">get_u8</span>());
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="string">b&#39;e&#39;</span>, <span class="ident">buf</span>.<span class="ident">get_u8</span>());
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="string">b&#39;l&#39;</span>, <span class="ident">buf</span>.<span class="ident">get_u8</span>());
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">rest</span> <span class="op">=</span> [<span class="number">0</span>; <span class="number">8</span>];
<span class="ident">buf</span>.<span class="ident">copy_to_slice</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="ident">rest</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&amp;</span><span class="ident">rest</span>[..], <span class="kw-2">&amp;</span><span class="string">b&quot;lo world&quot;</span>[..]);</pre></div>
</div><h2 id="required-methods" class="small-section-header">Required methods<a href="#required-methods" class="anchor"></a></h2><div class="methods"><h3 id="tymethod.remaining" class="method"><code>fn <a href="#tymethod.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#102" title="goto source code">[src]</a></h3><div class="docblock"><p>Returns the number of bytes between the current position and the end of
the buffer.</p>
<p>This value is greater than or equal to the length of the slice returned
by <code>chunk()</code>.</p>
<h1 id="examples" class="section-header"><a href="#examples">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">remaining</span>(), <span class="number">11</span>);
<span class="ident">buf</span>.<span class="ident">get_u8</span>();
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">remaining</span>(), <span class="number">10</span>);</pre></div>
<h1 id="implementer-notes" class="section-header"><a href="#implementer-notes">Implementer notes</a></h1>
<p>Implementations of <code>remaining</code> should ensure that the return value does
not change unless a call is made to <code>advance</code> or any other function that
is documented to change the <code>Buf</code>'s current position.</p>
</div><h3 id="tymethod.chunk" class="method"><code>fn <a href="#tymethod.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#130" title="goto source code">[src]</a></h3><div class="docblock"><p>Returns a slice starting at the current position and of length between 0
and <code>Buf::remaining()</code>. Note that this <em>can</em> return shorter slice (this allows
non-continuous internal representation).</p>
<p>This is a lower level function. Most operations are done with other
functions.</p>
<h1 id="examples-1" class="section-header"><a href="#examples-1">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">chunk</span>(), <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..]);
<span class="ident">buf</span>.<span class="ident">advance</span>(<span class="number">6</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">chunk</span>(), <span class="kw-2">&amp;</span><span class="string">b&quot;world&quot;</span>[..]);</pre></div>
<h1 id="implementer-notes-1" class="section-header"><a href="#implementer-notes-1">Implementer notes</a></h1>
<p>This function should never panic. Once the end of the buffer is reached,
i.e., <code>Buf::remaining</code> returns 0, calls to <code>chunk()</code> should return an
empty slice.</p>
</div><h3 id="tymethod.advance" class="method"><code>fn <a href="#tymethod.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#203" title="goto source code">[src]</a></h3><div class="docblock"><p>Advance the internal cursor of the Buf</p>
<p>The next call to <code>chunk()</code> will return a slice starting <code>cnt</code> bytes
further into the underlying buffer.</p>
<h1 id="examples-2" class="section-header"><a href="#examples-2">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">chunk</span>(), <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..]);
<span class="ident">buf</span>.<span class="ident">advance</span>(<span class="number">6</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">chunk</span>(), <span class="kw-2">&amp;</span><span class="string">b&quot;world&quot;</span>[..]);</pre></div>
<h1 id="panics" class="section-header"><a href="#panics">Panics</a></h1>
<p>This function <strong>may</strong> panic if <code>cnt &gt; self.remaining()</code>.</p>
<h1 id="implementer-notes-2" class="section-header"><a href="#implementer-notes-2">Implementer notes</a></h1>
<p>It is recommended for implementations of <code>advance</code> to panic if <code>cnt &gt; self.remaining()</code>. If the implementation does not panic, the call must
behave as if <code>cnt == self.remaining()</code>.</p>
<p>A call with <code>cnt == 0</code> should never panic and be a no-op.</p>
</div></div><span class="loading-content">Loading content...</span><h2 id="provided-methods" class="small-section-header">Provided methods<a href="#provided-methods" class="anchor"></a></h2><div class="methods"><h3 id="method.chunks_vectored" class="method"><code>fn <a href="#method.chunks_vectored" class="fnname">chunks_vectored</a>&lt;'a&gt;(&amp;'a self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a>&lt;'a&gt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#160-171" title="goto source code">[src]</a></h3><div class="docblock"><p>Fills <code>dst</code> with potentially multiple slices starting at <code>self</code>'s
current position.</p>
<p>If the <code>Buf</code> is backed by disjoint slices of bytes, <code>chunk_vectored</code> enables
fetching more than one slice at once. <code>dst</code> is a slice of <code>IoSlice</code>
references, enabling the slice to be directly used with <a href="http://man7.org/linux/man-pages/man2/readv.2.html"><code>writev</code></a>
without any further conversion. The sum of the lengths of all the
buffers in <code>dst</code> will be less than or equal to <code>Buf::remaining()</code>.</p>
<p>The entries in <code>dst</code> will be overwritten, but the data <strong>contained</strong> by
the slices <strong>will not</strong> be modified. If <code>chunk_vectored</code> does not fill every
entry in <code>dst</code>, then <code>dst</code> is guaranteed to contain all remaining slices
in `self.</p>
<p>This is a lower level function. Most operations are done with other
functions.</p>
<h1 id="implementer-notes-3" class="section-header"><a href="#implementer-notes-3">Implementer notes</a></h1>
<p>This function should never panic. Once the end of the buffer is reached,
i.e., <code>Buf::remaining</code> returns 0, calls to <code>chunk_vectored</code> must return 0
without mutating <code>dst</code>.</p>
<p>Implementations should also take care to properly handle being called
with <code>dst</code> being a zero length slice.</p>
</div><h3 id="method.has_remaining" class="method"><code>fn <a href="#method.has_remaining" class="fnname">has_remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#222-224" title="goto source code">[src]</a></h3><div class="docblock"><p>Returns true if there are any more bytes to consume</p>
<p>This is equivalent to <code>self.remaining() != 0</code>.</p>
<h1 id="examples-3" class="section-header"><a href="#examples-3">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;a&quot;</span>[..];
<span class="macro">assert</span><span class="macro">!</span>(<span class="ident">buf</span>.<span class="ident">has_remaining</span>());
<span class="ident">buf</span>.<span class="ident">get_u8</span>();
<span class="macro">assert</span><span class="macro">!</span>(<span class="op">!</span><span class="ident">buf</span>.<span class="ident">has_remaining</span>());</pre></div>
</div><h3 id="method.copy_to_slice" class="method"><code>fn <a href="#method.copy_to_slice" class="fnname">copy_to_slice</a>(&amp;mut self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#247-266" title="goto source code">[src]</a></h3><div class="docblock"><p>Copies bytes from <code>self</code> into <code>dst</code>.</p>
<p>The cursor is advanced by the number of bytes copied. <code>self</code> must have
enough remaining bytes to fill <code>dst</code>.</p>
<h1 id="examples-4" class="section-header"><a href="#examples-4">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..];
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">dst</span> <span class="op">=</span> [<span class="number">0</span>; <span class="number">5</span>];
<span class="ident">buf</span>.<span class="ident">copy_to_slice</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="ident">dst</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&amp;</span><span class="string">b&quot;hello&quot;</span>[..], <span class="kw-2">&amp;</span><span class="ident">dst</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">6</span>, <span class="ident">buf</span>.<span class="ident">remaining</span>());</pre></div>
<h1 id="panics-1" class="section-header"><a href="#panics-1">Panics</a></h1>
<p>This function panics if <code>self.remaining() &lt; dst.len()</code></p>
</div><h3 id="method.get_u8" class="method"><code>fn <a href="#method.get_u8" class="fnname">get_u8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#284-289" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 8 bit integer from <code>self</code>.</p>
<p>The current position is advanced by 1.</p>
<h1 id="examples-5" class="section-header"><a href="#examples-5">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">8</span>, <span class="ident">buf</span>.<span class="ident">get_u8</span>());</pre></div>
<h1 id="panics-2" class="section-header"><a href="#panics-2">Panics</a></h1>
<p>This function panics if there is no more remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i8" class="method"><code>fn <a href="#method.get_i8" class="fnname">get_i8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#307-312" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 8 bit integer from <code>self</code>.</p>
<p>The current position is advanced by 1.</p>
<h1 id="examples-6" class="section-header"><a href="#examples-6">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">8</span>, <span class="ident">buf</span>.<span class="ident">get_i8</span>());</pre></div>
<h1 id="panics-3" class="section-header"><a href="#panics-3">Panics</a></h1>
<p>This function panics if there is no more remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u16" class="method"><code>fn <a href="#method.get_u16" class="fnname">get_u16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#330-332" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 16 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 2.</p>
<h1 id="examples-7" class="section-header"><a href="#examples-7">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x09 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809</span>, <span class="ident">buf</span>.<span class="ident">get_u16</span>());</pre></div>
<h1 id="panics-4" class="section-header"><a href="#panics-4">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u16_le" class="method"><code>fn <a href="#method.get_u16_le" class="fnname">get_u16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#350-352" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 16 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 2.</p>
<h1 id="examples-8" class="section-header"><a href="#examples-8">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x09\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809</span>, <span class="ident">buf</span>.<span class="ident">get_u16_le</span>());</pre></div>
<h1 id="panics-5" class="section-header"><a href="#panics-5">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i16" class="method"><code>fn <a href="#method.get_i16" class="fnname">get_i16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#370-372" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 16 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 2.</p>
<h1 id="examples-9" class="section-header"><a href="#examples-9">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x09 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809</span>, <span class="ident">buf</span>.<span class="ident">get_i16</span>());</pre></div>
<h1 id="panics-6" class="section-header"><a href="#panics-6">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i16_le" class="method"><code>fn <a href="#method.get_i16_le" class="fnname">get_i16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#390-392" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 16 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 2.</p>
<h1 id="examples-10" class="section-header"><a href="#examples-10">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x09\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809</span>, <span class="ident">buf</span>.<span class="ident">get_i16_le</span>());</pre></div>
<h1 id="panics-7" class="section-header"><a href="#panics-7">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u32" class="method"><code>fn <a href="#method.get_u32" class="fnname">get_u32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#410-412" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 32 bit integer from <code>self</code> in the big-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-11" class="section-header"><a href="#examples-11">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x09\xA0\xA1 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809A0A1</span>, <span class="ident">buf</span>.<span class="ident">get_u32</span>());</pre></div>
<h1 id="panics-8" class="section-header"><a href="#panics-8">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u32_le" class="method"><code>fn <a href="#method.get_u32_le" class="fnname">get_u32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#430-432" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 32 bit integer from <code>self</code> in the little-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-12" class="section-header"><a href="#examples-12">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\xA1\xA0\x09\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809A0A1</span>, <span class="ident">buf</span>.<span class="ident">get_u32_le</span>());</pre></div>
<h1 id="panics-9" class="section-header"><a href="#panics-9">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i32" class="method"><code>fn <a href="#method.get_i32" class="fnname">get_i32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#450-452" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 32 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-13" class="section-header"><a href="#examples-13">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x09\xA0\xA1 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809A0A1</span>, <span class="ident">buf</span>.<span class="ident">get_i32</span>());</pre></div>
<h1 id="panics-10" class="section-header"><a href="#panics-10">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i32_le" class="method"><code>fn <a href="#method.get_i32_le" class="fnname">get_i32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#470-472" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 32 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-14" class="section-header"><a href="#examples-14">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\xA1\xA0\x09\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0809A0A1</span>, <span class="ident">buf</span>.<span class="ident">get_i32_le</span>());</pre></div>
<h1 id="panics-11" class="section-header"><a href="#panics-11">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u64" class="method"><code>fn <a href="#method.get_u64" class="fnname">get_u64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#490-492" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 64 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-15" class="section-header"><a href="#examples-15">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03\x04\x05\x06\x07\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0102030405060708</span>, <span class="ident">buf</span>.<span class="ident">get_u64</span>());</pre></div>
<h1 id="panics-12" class="section-header"><a href="#panics-12">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u64_le" class="method"><code>fn <a href="#method.get_u64_le" class="fnname">get_u64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#510-512" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 64 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-16" class="section-header"><a href="#examples-16">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x07\x06\x05\x04\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0102030405060708</span>, <span class="ident">buf</span>.<span class="ident">get_u64_le</span>());</pre></div>
<h1 id="panics-13" class="section-header"><a href="#panics-13">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i64" class="method"><code>fn <a href="#method.get_i64" class="fnname">get_i64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#530-532" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 64 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-17" class="section-header"><a href="#examples-17">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03\x04\x05\x06\x07\x08 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0102030405060708</span>, <span class="ident">buf</span>.<span class="ident">get_i64</span>());</pre></div>
<h1 id="panics-14" class="section-header"><a href="#panics-14">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i64_le" class="method"><code>fn <a href="#method.get_i64_le" class="fnname">get_i64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#550-552" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 64 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-18" class="section-header"><a href="#examples-18">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x08\x07\x06\x05\x04\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x0102030405060708</span>, <span class="ident">buf</span>.<span class="ident">get_i64_le</span>());</pre></div>
<h1 id="panics-15" class="section-header"><a href="#panics-15">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u128" class="method"><code>fn <a href="#method.get_u128" class="fnname">get_u128</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#570-572" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 128 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 16.</p>
<h1 id="examples-19" class="section-header"><a href="#examples-19">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x01020304050607080910111213141516</span>, <span class="ident">buf</span>.<span class="ident">get_u128</span>());</pre></div>
<h1 id="panics-16" class="section-header"><a href="#panics-16">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_u128_le" class="method"><code>fn <a href="#method.get_u128_le" class="fnname">get_u128_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u128.html">u128</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#590-592" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned 128 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 16.</p>
<h1 id="examples-20" class="section-header"><a href="#examples-20">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x16\x15\x14\x13\x12\x11\x10\x09\x08\x07\x06\x05\x04\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x01020304050607080910111213141516</span>, <span class="ident">buf</span>.<span class="ident">get_u128_le</span>());</pre></div>
<h1 id="panics-17" class="section-header"><a href="#panics-17">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i128" class="method"><code>fn <a href="#method.get_i128" class="fnname">get_i128</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#610-612" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 128 bit integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 16.</p>
<h1 id="examples-21" class="section-header"><a href="#examples-21">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x01020304050607080910111213141516</span>, <span class="ident">buf</span>.<span class="ident">get_i128</span>());</pre></div>
<h1 id="panics-18" class="section-header"><a href="#panics-18">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_i128_le" class="method"><code>fn <a href="#method.get_i128_le" class="fnname">get_i128_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i128.html">i128</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#630-632" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed 128 bit integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 16.</p>
<h1 id="examples-22" class="section-header"><a href="#examples-22">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x16\x15\x14\x13\x12\x11\x10\x09\x08\x07\x06\x05\x04\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x01020304050607080910111213141516</span>, <span class="ident">buf</span>.<span class="ident">get_i128_le</span>());</pre></div>
<h1 id="panics-19" class="section-header"><a href="#panics-19">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_uint" class="method"><code>fn <a href="#method.get_uint" class="fnname">get_uint</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#650-652" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned n-byte integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by <code>nbytes</code>.</p>
<h1 id="examples-23" class="section-header"><a href="#examples-23">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x010203</span>, <span class="ident">buf</span>.<span class="ident">get_uint</span>(<span class="number">3</span>));</pre></div>
<h1 id="panics-20" class="section-header"><a href="#panics-20">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_uint_le" class="method"><code>fn <a href="#method.get_uint_le" class="fnname">get_uint_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#670-672" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an unsigned n-byte integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by <code>nbytes</code>.</p>
<h1 id="examples-24" class="section-header"><a href="#examples-24">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x010203</span>, <span class="ident">buf</span>.<span class="ident">get_uint_le</span>(<span class="number">3</span>));</pre></div>
<h1 id="panics-21" class="section-header"><a href="#panics-21">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_int" class="method"><code>fn <a href="#method.get_int" class="fnname">get_int</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#690-692" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed n-byte integer from <code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by <code>nbytes</code>.</p>
<h1 id="examples-25" class="section-header"><a href="#examples-25">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x01\x02\x03 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x010203</span>, <span class="ident">buf</span>.<span class="ident">get_int</span>(<span class="number">3</span>));</pre></div>
<h1 id="panics-22" class="section-header"><a href="#panics-22">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_int_le" class="method"><code>fn <a href="#method.get_int_le" class="fnname">get_int_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#710-712" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets a signed n-byte integer from <code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by <code>nbytes</code>.</p>
<h1 id="examples-26" class="section-header"><a href="#examples-26">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x03\x02\x01 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">0x010203</span>, <span class="ident">buf</span>.<span class="ident">get_int_le</span>(<span class="number">3</span>));</pre></div>
<h1 id="panics-23" class="section-header"><a href="#panics-23">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_f32" class="method"><code>fn <a href="#method.get_f32" class="fnname">get_f32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#731-733" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an IEEE754 single-precision (4 bytes) floating point number from
<code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-27" class="section-header"><a href="#examples-27">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x3F\x99\x99\x9A hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">1.2f32</span>, <span class="ident">buf</span>.<span class="ident">get_f32</span>());</pre></div>
<h1 id="panics-24" class="section-header"><a href="#panics-24">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_f32_le" class="method"><code>fn <a href="#method.get_f32_le" class="fnname">get_f32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#752-754" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an IEEE754 single-precision (4 bytes) floating point number from
<code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 4.</p>
<h1 id="examples-28" class="section-header"><a href="#examples-28">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x9A\x99\x99\x3F hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">1.2f32</span>, <span class="ident">buf</span>.<span class="ident">get_f32_le</span>());</pre></div>
<h1 id="panics-25" class="section-header"><a href="#panics-25">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_f64" class="method"><code>fn <a href="#method.get_f64" class="fnname">get_f64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#773-775" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an IEEE754 double-precision (8 bytes) floating point number from
<code>self</code> in big-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-29" class="section-header"><a href="#examples-29">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x3F\xF3\x33\x33\x33\x33\x33\x33 hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">1.2f64</span>, <span class="ident">buf</span>.<span class="ident">get_f64</span>());</pre></div>
<h1 id="panics-26" class="section-header"><a href="#panics-26">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.get_f64_le" class="method"><code>fn <a href="#method.get_f64_le" class="fnname">get_f64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#794-796" title="goto source code">[src]</a></h3><div class="docblock"><p>Gets an IEEE754 double-precision (8 bytes) floating point number from
<code>self</code> in little-endian byte order.</p>
<p>The current position is advanced by 8.</p>
<h1 id="examples-30" class="section-header"><a href="#examples-30">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="kw-2">&amp;</span><span class="string">b&quot;\x33\x33\x33\x33\x33\x33\xF3\x3F hello&quot;</span>[..];
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">1.2f64</span>, <span class="ident">buf</span>.<span class="ident">get_f64_le</span>());</pre></div>
<h1 id="panics-27" class="section-header"><a href="#panics-27">Panics</a></h1>
<p>This function panics if there is not enough remaining data in <code>self</code>.</p>
</div><h3 id="method.copy_to_bytes" class="method"><code>fn <a href="#method.copy_to_bytes" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#813-821" title="goto source code">[src]</a></h3><div class="docblock"><p>Consumes <code>len</code> bytes inside self and returns new instance of <code>Bytes</code>
with this data.</p>
<p>This function may be optimized by the underlying type to avoid actual
copies. For example, <code>Bytes</code> implementation will do a shallow copy
(ref-count increment).</p>
<h1 id="examples-31" class="section-header"><a href="#examples-31">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="ident">bytes</span> <span class="op">=</span> (<span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..]).<span class="ident">copy_to_bytes</span>(<span class="number">5</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&amp;</span><span class="ident">bytes</span>[..], <span class="kw-2">&amp;</span><span class="string">b&quot;hello&quot;</span>[..]);</pre></div>
</div><h3 id="method.take" class="method"><code>fn <a href="#method.take" class="fnname">take</a>(self, limit: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/buf/struct.Take.html" title="struct bytes::buf::Take">Take</a>&lt;Self&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#844-849" title="goto source code">[src]</a></h3><div class="docblock"><p>Creates an adaptor which will read at most <code>limit</code> bytes from <code>self</code>.</p>
<p>This function returns a new instance of <code>Buf</code> which will read at most
<code>limit</code> bytes.</p>
<h1 id="examples-32" class="section-header"><a href="#examples-32">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::{<span class="ident">Buf</span>, <span class="ident">BufMut</span>};
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="string">b&quot;hello world&quot;</span>[..].<span class="ident">take</span>(<span class="number">5</span>);
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">dst</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[];
<span class="ident">dst</span>.<span class="ident">put</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="ident">buf</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">dst</span>, <span class="string">b&quot;hello&quot;</span>);
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buf</span> <span class="op">=</span> <span class="ident">buf</span>.<span class="ident">into_inner</span>();
<span class="ident">dst</span>.<span class="ident">clear</span>();
<span class="ident">dst</span>.<span class="ident">put</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="ident">buf</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">dst</span>, <span class="string">b&quot; world&quot;</span>);</pre></div>
</div><h3 id="method.chain" class="method"><code>fn <a href="#method.chain" class="fnname">chain</a>&lt;U:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a>&gt;(self, next: U) -&gt; <a class="struct" href="../bytes/buf/struct.Chain.html" title="struct bytes::buf::Chain">Chain</a>&lt;Self, U&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#866-871" title="goto source code">[src]</a></h3><div class="docblock"><p>Creates an adaptor which will chain this buffer with another.</p>
<p>The returned <code>Buf</code> instance will first consume all bytes from <code>self</code>.
Afterwards the output is equivalent to the output of next.</p>
<h1 id="examples-33" class="section-header"><a href="#examples-33">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::<span class="ident">Buf</span>;
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">chain</span> <span class="op">=</span> <span class="string">b&quot;hello &quot;</span>[..].<span class="ident">chain</span>(<span class="kw-2">&amp;</span><span class="string">b&quot;world&quot;</span>[..]);
<span class="kw">let</span> <span class="ident">full</span> <span class="op">=</span> <span class="ident">chain</span>.<span class="ident">copy_to_bytes</span>(<span class="number">11</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">full</span>.<span class="ident">chunk</span>(), <span class="string">b&quot;hello world&quot;</span>);</pre></div>
</div><h3 id="method.reader" class="method"><code>fn <a href="#method.reader" class="fnname">reader</a>(self) -&gt; <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;Self&gt;<span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;B&gt;</h3><code class="content"><span class="where fmt-newline">impl&lt;B:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="struct" href="../bytes/buf/struct.Reader.html" title="struct bytes::buf::Reader">Reader</a>&lt;B&gt;</span></code></span></div></span></span> <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#897-902" title="goto source code">[src]</a></h3><div class="docblock"><p>Creates an adaptor which implements the <code>Read</code> trait for <code>self</code>.</p>
<p>This function returns a new value which implements <code>Read</code> by adapting
the <code>Read</code> trait functions to the <code>Buf</code> trait functions. Given that
<code>Buf</code> operations are infallible, none of the <code>Read</code> functions will
return with <code>Err</code>.</p>
<h1 id="examples-34" class="section-header"><a href="#examples-34">Examples</a></h1>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">bytes</span>::{<span class="ident">Bytes</span>, <span class="ident">Buf</span>};
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">io</span>::<span class="ident">Read</span>;
<span class="kw">let</span> <span class="ident">buf</span> <span class="op">=</span> <span class="ident">Bytes</span>::<span class="ident">from</span>(<span class="string">&quot;hello world&quot;</span>);
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">reader</span> <span class="op">=</span> <span class="ident">buf</span>.<span class="ident">reader</span>();
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">dst</span> <span class="op">=</span> [<span class="number">0</span>; <span class="number">1024</span>];
<span class="kw">let</span> <span class="ident">num</span> <span class="op">=</span> <span class="ident">reader</span>.<span class="ident">read</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="ident">dst</span>).<span class="ident">unwrap</span>();
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="number">11</span>, <span class="ident">num</span>);
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&amp;</span><span class="ident">dst</span>[..<span class="number">11</span>], <span class="kw-2">&amp;</span><span class="string">b&quot;hello world&quot;</span>[..]);</pre></div>
</div></div><span class="loading-content">Loading content...</span><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><h3 id="impl-Buf-for-%26mut%20T" class="impl"><code class="in-band">impl&lt;T:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>&gt; <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a href="#impl-Buf-for-%26mut%20T" class="anchor"></a><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1010-1012" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining" class="method hidden"><code>fn <a href="#method.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.chunk" class="method hidden"><code>fn <a href="#method.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.chunks_vectored-1" class="method hidden"><code>fn <a href="#method.chunks_vectored" class="fnname">chunks_vectored</a>&lt;'b&gt;(&amp;'b self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a>&lt;'b&gt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.advance" class="method hidden"><code>fn <a href="#method.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.has_remaining-1" class="method hidden"><code>fn <a href="#method.has_remaining" class="fnname">has_remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.copy_to_slice-1" class="method hidden"><code>fn <a href="#method.copy_to_slice" class="fnname">copy_to_slice</a>(&amp;mut self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u8-1" class="method hidden"><code>fn <a href="#method.get_u8" class="fnname">get_u8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i8-1" class="method hidden"><code>fn <a href="#method.get_i8" class="fnname">get_i8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u16-1" class="method hidden"><code>fn <a href="#method.get_u16" class="fnname">get_u16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u16_le-1" class="method hidden"><code>fn <a href="#method.get_u16_le" class="fnname">get_u16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i16-1" class="method hidden"><code>fn <a href="#method.get_i16" class="fnname">get_i16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i16_le-1" class="method hidden"><code>fn <a href="#method.get_i16_le" class="fnname">get_i16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u32-1" class="method hidden"><code>fn <a href="#method.get_u32" class="fnname">get_u32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u32_le-1" class="method hidden"><code>fn <a href="#method.get_u32_le" class="fnname">get_u32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i32-1" class="method hidden"><code>fn <a href="#method.get_i32" class="fnname">get_i32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i32_le-1" class="method hidden"><code>fn <a href="#method.get_i32_le" class="fnname">get_i32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u64-1" class="method hidden"><code>fn <a href="#method.get_u64" class="fnname">get_u64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_u64_le-1" class="method hidden"><code>fn <a href="#method.get_u64_le" class="fnname">get_u64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i64-1" class="method hidden"><code>fn <a href="#method.get_i64" class="fnname">get_i64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_i64_le-1" class="method hidden"><code>fn <a href="#method.get_i64_le" class="fnname">get_i64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_uint-1" class="method hidden"><code>fn <a href="#method.get_uint" class="fnname">get_uint</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_uint_le-1" class="method hidden"><code>fn <a href="#method.get_uint_le" class="fnname">get_uint_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_int-1" class="method hidden"><code>fn <a href="#method.get_int" class="fnname">get_int</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.get_int_le-1" class="method hidden"><code>fn <a href="#method.get_int_le" class="fnname">get_int_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4><h4 id="method.copy_to_bytes-1" class="method hidden"><code>fn <a href="#method.copy_to_bytes" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1011" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-for-Box%3CT%3E" class="impl"><code class="in-band">impl&lt;T:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>&gt; <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;T&gt;</code><a href="#impl-Buf-for-Box%3CT%3E" class="anchor"></a><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1014-1016" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-1" class="method hidden"><code>fn <a href="#method.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.chunk-1" class="method hidden"><code>fn <a href="#method.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.chunks_vectored-2" class="method hidden"><code>fn <a href="#method.chunks_vectored" class="fnname">chunks_vectored</a>&lt;'b&gt;(&amp;'b self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a>&lt;'b&gt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.advance-1" class="method hidden"><code>fn <a href="#method.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.has_remaining-2" class="method hidden"><code>fn <a href="#method.has_remaining" class="fnname">has_remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.copy_to_slice-2" class="method hidden"><code>fn <a href="#method.copy_to_slice" class="fnname">copy_to_slice</a>(&amp;mut self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u8-2" class="method hidden"><code>fn <a href="#method.get_u8" class="fnname">get_u8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i8-2" class="method hidden"><code>fn <a href="#method.get_i8" class="fnname">get_i8</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i8.html">i8</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u16-2" class="method hidden"><code>fn <a href="#method.get_u16" class="fnname">get_u16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u16_le-2" class="method hidden"><code>fn <a href="#method.get_u16_le" class="fnname">get_u16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i16-2" class="method hidden"><code>fn <a href="#method.get_i16" class="fnname">get_i16</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i16_le-2" class="method hidden"><code>fn <a href="#method.get_i16_le" class="fnname">get_i16_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i16.html">i16</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u32-2" class="method hidden"><code>fn <a href="#method.get_u32" class="fnname">get_u32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u32_le-2" class="method hidden"><code>fn <a href="#method.get_u32_le" class="fnname">get_u32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i32-2" class="method hidden"><code>fn <a href="#method.get_i32" class="fnname">get_i32</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i32_le-2" class="method hidden"><code>fn <a href="#method.get_i32_le" class="fnname">get_i32_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u64-2" class="method hidden"><code>fn <a href="#method.get_u64" class="fnname">get_u64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_u64_le-2" class="method hidden"><code>fn <a href="#method.get_u64_le" class="fnname">get_u64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i64-2" class="method hidden"><code>fn <a href="#method.get_i64" class="fnname">get_i64</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_i64_le-2" class="method hidden"><code>fn <a href="#method.get_i64_le" class="fnname">get_i64_le</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_uint-2" class="method hidden"><code>fn <a href="#method.get_uint" class="fnname">get_uint</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_uint_le-2" class="method hidden"><code>fn <a href="#method.get_uint_le" class="fnname">get_uint_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_int-2" class="method hidden"><code>fn <a href="#method.get_int" class="fnname">get_int</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.get_int_le-2" class="method hidden"><code>fn <a href="#method.get_int_le" class="fnname">get_int_le</a>(&amp;mut self, nbytes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4><h4 id="method.copy_to_bytes-2" class="method hidden"><code>fn <a href="#method.copy_to_bytes" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1015" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-for-%26%5Bu8%5D" class="impl"><code class="in-band">impl <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a href="#impl-Buf-for-%26%5Bu8%5D" class="anchor"></a><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1018-1033" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-2" class="method hidden"><code>fn <a href="#method.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1020-1022" title="goto source code">[src]</a></h4><h4 id="method.chunk-2" class="method hidden"><code>fn <a href="#method.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1025-1027" title="goto source code">[src]</a></h4><h4 id="method.advance-2" class="method hidden"><code>fn <a href="#method.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1030-1032" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-for-Cursor%3CT%3E" class="impl"><code class="in-band">impl&lt;T:&nbsp;<a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>&gt;&gt; <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> for <a class="struct" href="https://doc.rust-lang.org/nightly/std/io/cursor/struct.Cursor.html" title="struct std::io::cursor::Cursor">Cursor</a>&lt;T&gt;</code><a href="#impl-Buf-for-Cursor%3CT%3E" class="anchor"></a><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1036-1067" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-3" class="method hidden"><code>fn <a href="#method.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1037-1046" title="goto source code">[src]</a></h4><h4 id="method.chunk-3" class="method hidden"><code>fn <a href="#method.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1048-1057" title="goto source code">[src]</a></h4><h4 id="method.advance-3" class="method hidden"><code>fn <a href="#method.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/buf_impl.rs.html#1059-1066" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-for-VecDeque%3Cu8%3E" class="impl"><code class="in-band">impl <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a> for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/vec_deque/struct.VecDeque.html" title="struct alloc::collections::vec_deque::VecDeque">VecDeque</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</code><a href="#impl-Buf-for-VecDeque%3Cu8%3E" class="anchor"></a><a class="srclink" href="../src/bytes/buf/vec_deque.rs.html#5-22" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-4" class="method hidden"><code>fn <a href="#method.remaining" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/vec_deque.rs.html#6-8" title="goto source code">[src]</a></h4><h4 id="method.chunk-4" class="method hidden"><code>fn <a href="#method.chunk" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/vec_deque.rs.html#10-17" title="goto source code">[src]</a></h4><h4 id="method.advance-4" class="method hidden"><code>fn <a href="#method.advance" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/vec_deque.rs.html#19-21" title="goto source code">[src]</a></h4></div><span class="loading-content">Loading content...</span><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><h3 id="impl-Buf" class="impl"><code class="in-band">impl Buf for <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a href="#impl-Buf" class="anchor"></a><a class="srclink" href="../src/bytes/bytes.rs.html#526-560" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-5" class="method hidden"><code>fn <a href="#method.remaining-5" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/bytes.rs.html#528-530" title="goto source code">[src]</a></h4><h4 id="method.chunk-5" class="method hidden"><code>fn <a href="#method.chunk-5" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/bytes.rs.html#533-535" title="goto source code">[src]</a></h4><h4 id="method.advance-5" class="method hidden"><code>fn <a href="#method.advance-5" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/bytes.rs.html#538-549" title="goto source code">[src]</a></h4><h4 id="method.copy_to_bytes-3" class="method hidden"><code>fn <a href="#method.copy_to_bytes-3" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a class="srclink" href="../src/bytes/bytes.rs.html#551-559" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-1" class="impl"><code class="in-band">impl Buf for <a class="struct" href="../bytes/struct.BytesMut.html" title="struct bytes::BytesMut">BytesMut</a></code><a href="#impl-Buf-1" class="anchor"></a><a class="srclink" href="../src/bytes/bytes_mut.rs.html#940-967" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-6" class="method hidden"><code>fn <a href="#method.remaining-6" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/bytes_mut.rs.html#942-944" title="goto source code">[src]</a></h4><h4 id="method.chunk-6" class="method hidden"><code>fn <a href="#method.chunk-6" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/bytes_mut.rs.html#947-949" title="goto source code">[src]</a></h4><h4 id="method.advance-6" class="method hidden"><code>fn <a href="#method.advance-6" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/bytes_mut.rs.html#952-962" title="goto source code">[src]</a></h4><h4 id="method.copy_to_bytes-4" class="method hidden"><code>fn <a href="#method.copy_to_bytes-4" class="fnname">copy_to_bytes</a>(&amp;mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="struct" href="../bytes/struct.Bytes.html" title="struct bytes::Bytes">Bytes</a></code><a class="srclink" href="../src/bytes/bytes_mut.rs.html#964-966" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-2" class="impl"><code class="in-band">impl&lt;T, U&gt; Buf for <a class="struct" href="../bytes/buf/struct.Chain.html" title="struct bytes::buf::Chain">Chain</a>&lt;T, U&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a>,&nbsp;</span></code><a href="#impl-Buf-2" class="anchor"></a><a class="srclink" href="../src/bytes/buf/chain.rs.html#132-173" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-7" class="method hidden"><code>fn <a href="#method.remaining-7" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/chain.rs.html#137-139" title="goto source code">[src]</a></h4><h4 id="method.chunk-7" class="method hidden"><code>fn <a href="#method.chunk-7" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/chain.rs.html#141-147" title="goto source code">[src]</a></h4><h4 id="method.advance-7" class="method hidden"><code>fn <a href="#method.advance-7" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/chain.rs.html#149-165" title="goto source code">[src]</a></h4><h4 id="method.chunks_vectored-3" class="method hidden"><code>fn <a href="#method.chunks_vectored-3" class="fnname">chunks_vectored</a>&lt;'a&gt;(&amp;'a self, dst: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a>&lt;'a&gt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/chain.rs.html#168-172" title="goto source code">[src]</a></h4></div><h3 id="impl-Buf-3" class="impl"><code class="in-band">impl&lt;T:&nbsp;<a class="trait" href="../bytes/buf/trait.Buf.html" title="trait bytes::buf::Buf">Buf</a>&gt; Buf for <a class="struct" href="../bytes/buf/struct.Take.html" title="struct bytes::buf::Take">Take</a>&lt;T&gt;</code><a href="#impl-Buf-3" class="anchor"></a><a class="srclink" href="../src/bytes/buf/take.rs.html#132-147" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.remaining-8" class="method hidden"><code>fn <a href="#method.remaining-8" class="fnname">remaining</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class="srclink" href="../src/bytes/buf/take.rs.html#133-135" title="goto source code">[src]</a></h4><h4 id="method.chunk-8" class="method hidden"><code>fn <a href="#method.chunk-8" class="fnname">chunk</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a><span class="notable-traits"><span class="notable-traits-tooltip"><div class="notable-traits-tooltiptext"><span class="docblock"><h3 class="notable">Notable traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></h3><code class="content"><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span><span class="where fmt-newline">impl&lt;'_&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;'_ mut [</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></span></code></span></div></span></span></code><a class="srclink" href="../src/bytes/buf/take.rs.html#137-140" title="goto source code">[src]</a></h4><h4 id="method.advance-8" class="method hidden"><code>fn <a href="#method.advance-8" class="fnname">advance</a>(&amp;mut self, cnt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class="srclink" href="../src/bytes/buf/take.rs.html#142-146" title="goto source code">[src]</a></h4></div></div><span class="loading-content">Loading content...</span><script type="text/javascript" src="../implementors/bytes/trait.Buf.js" async></script></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../" data-current-crate="bytes"></div>
<script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>