blob: add44b99655e5f9b57a396d2d62baab24e113974 [file] [log] [blame]
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Extends `Read` with methods for reading numbers. (For `std::io`.)"><meta name="keywords" content="rust, rustlang, rust-lang, ReadBytesExt"><title>ReadBytesExt in byteorder - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../normalize.css"><link rel="stylesheet" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../ayu.css" disabled><link rel="stylesheet" href="../dark.css" disabled><link rel="stylesheet" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../favicon.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../byteorder/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../byteorder/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">ReadBytesExt</a></h2><div class="sidebar-elems"><section><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.read_f32">read_f32</a></li><li><a href="#method.read_f32_into">read_f32_into</a></li><li><a href="#method.read_f32_into_unchecked">read_f32_into_unchecked</a></li><li><a href="#method.read_f64">read_f64</a></li><li><a href="#method.read_f64_into">read_f64_into</a></li><li><a href="#method.read_f64_into_unchecked">read_f64_into_unchecked</a></li><li><a href="#method.read_i128">read_i128</a></li><li><a href="#method.read_i128_into">read_i128_into</a></li><li><a href="#method.read_i16">read_i16</a></li><li><a href="#method.read_i16_into">read_i16_into</a></li><li><a href="#method.read_i24">read_i24</a></li><li><a href="#method.read_i32">read_i32</a></li><li><a href="#method.read_i32_into">read_i32_into</a></li><li><a href="#method.read_i48">read_i48</a></li><li><a href="#method.read_i64">read_i64</a></li><li><a href="#method.read_i64_into">read_i64_into</a></li><li><a href="#method.read_i8">read_i8</a></li><li><a href="#method.read_i8_into">read_i8_into</a></li><li><a href="#method.read_int">read_int</a></li><li><a href="#method.read_int128">read_int128</a></li><li><a href="#method.read_u128">read_u128</a></li><li><a href="#method.read_u128_into">read_u128_into</a></li><li><a href="#method.read_u16">read_u16</a></li><li><a href="#method.read_u16_into">read_u16_into</a></li><li><a href="#method.read_u24">read_u24</a></li><li><a href="#method.read_u32">read_u32</a></li><li><a href="#method.read_u32_into">read_u32_into</a></li><li><a href="#method.read_u48">read_u48</a></li><li><a href="#method.read_u64">read_u64</a></li><li><a href="#method.read_u64_into">read_u64_into</a></li><li><a href="#method.read_u8">read_u8</a></li><li><a href="#method.read_uint">read_uint</a></li><li><a href="#method.read_uint128">read_uint128</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In byteorder</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn">Trait <a href="index.html">byteorder</a>::<wbr><a class="trait" href="#">ReadBytesExt</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../src/byteorder/io.rs.html#30-1045">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="item-decl"><pre class="rust trait"><code>pub trait ReadBytesExt: Read {
<details class="rustdoc-toggle type-contents-toggle"><summary class="hideme"><span>Show 33 methods</span></summary> fn <a href="#method.read_u8" class="fnname">read_u8</a>(&amp;mut self) -&gt; Result&lt;u8&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i8" class="fnname">read_i8</a>(&amp;mut self) -&gt; Result&lt;i8&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u16" class="fnname">read_u16</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u16&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i16" class="fnname">read_i16</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i16&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u24" class="fnname">read_u24</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u32&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i24" class="fnname">read_i24</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i32&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u32" class="fnname">read_u32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u32&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i32" class="fnname">read_i32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i32&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u48" class="fnname">read_u48</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i48" class="fnname">read_i48</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u64" class="fnname">read_u64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i64" class="fnname">read_i64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u128" class="fnname">read_u128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u128&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i128" class="fnname">read_i128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i128&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_uint" class="fnname">read_uint</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;u64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_int" class="fnname">read_int</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;i64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_uint128" class="fnname">read_uint128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;u128&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_int128" class="fnname">read_int128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;i128&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f32" class="fnname">read_f32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;f32&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f64" class="fnname">read_f64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;f64&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u16_into" class="fnname">read_u16_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u16]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u32_into" class="fnname">read_u32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u32]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u64_into" class="fnname">read_u64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u64]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_u128_into" class="fnname">read_u128_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u128]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i8_into" class="fnname">read_i8_into</a>(&amp;mut self, dst: &amp;mut [i8]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i16_into" class="fnname">read_i16_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i16]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i32_into" class="fnname">read_i32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i32]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i64_into" class="fnname">read_i64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i64]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_i128_into" class="fnname">read_i128_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i128]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f32_into" class="fnname">read_f32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [f32]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f32_into_unchecked" class="fnname">read_f32_into_unchecked</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dst: &amp;mut [f32]<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f64_into" class="fnname">read_f64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [f64]) -&gt; Result&lt;()&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_f64_into_unchecked" class="fnname">read_f64_into_unchecked</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dst: &amp;mut [f64]<br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; Result&lt;()&gt; { ... }
</details>}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Extends <a href="https://doc.rust-lang.org/std/io/trait.Read.html"><code>Read</code></a> with methods for reading numbers. (For <code>std::io</code>.)</p>
<p>Most of the methods defined here have an unconstrained type parameter that
must be explicitly instantiated. Typically, it is instantiated with either
the <a href="enum.BigEndian.html"><code>BigEndian</code></a> or <a href="enum.LittleEndian.html"><code>LittleEndian</code></a> types defined in this crate.</p>
<h2 id="examples"><a href="#examples">Examples</a></h2>
<p>Read unsigned 16 bit big-endian integers from a <a href="https://doc.rust-lang.org/std/io/trait.Read.html"><code>Read</code></a>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">5</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="macro">assert_eq!</span>(<span class="number">517</span>, rdr.read_u16::&lt;BigEndian&gt;().unwrap());
<span class="macro">assert_eq!</span>(<span class="number">768</span>, rdr.read_u16::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><h2 id="provided-methods" class="small-section-header">Provided Methods<a href="#provided-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u8" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#55-59">source</a><h4 class="code-header">fn <a href="#method.read_u8" class="fnname">read_u8</a>(&amp;mut self) -&gt; Result&lt;u8&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 8 bit integer from the underlying reader.</p>
<p>Note that since this reads a single byte, no byte order conversions
are used. It is included for completeness.</p>
<h5 id="errors"><a href="#errors">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-1"><a href="#examples-1">Examples</a></h5>
<p>Read unsigned 8 bit integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::ReadBytesExt;
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">5</span>]);
<span class="macro">assert_eq!</span>(<span class="number">2</span>, rdr.read_u8().unwrap());
<span class="macro">assert_eq!</span>(<span class="number">5</span>, rdr.read_u8().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i8" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#85-89">source</a><h4 class="code-header">fn <a href="#method.read_i8" class="fnname">read_i8</a>(&amp;mut self) -&gt; Result&lt;i8&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 8 bit integer from the underlying reader.</p>
<p>Note that since this reads a single byte, no byte order conversions
are used. It is included for completeness.</p>
<h5 id="errors-1"><a href="#errors-1">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-2"><a href="#examples-2">Examples</a></h5>
<p>Read signed 8 bit integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::ReadBytesExt;
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x02</span>, <span class="number">0xfb</span>]);
<span class="macro">assert_eq!</span>(<span class="number">2</span>, rdr.read_i8().unwrap());
<span class="macro">assert_eq!</span>(-<span class="number">5</span>, rdr.read_i8().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u16" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#112-116">source</a><h4 class="code-header">fn <a href="#method.read_u16" class="fnname">read_u16</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u16&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 16 bit integer from the underlying reader.</p>
<h5 id="errors-2"><a href="#errors-2">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-3"><a href="#examples-3">Examples</a></h5>
<p>Read unsigned 16 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">5</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="macro">assert_eq!</span>(<span class="number">517</span>, rdr.read_u16::&lt;BigEndian&gt;().unwrap());
<span class="macro">assert_eq!</span>(<span class="number">768</span>, rdr.read_u16::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i16" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#139-143">source</a><h4 class="code-header">fn <a href="#method.read_i16" class="fnname">read_i16</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i16&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 16 bit integer from the underlying reader.</p>
<h5 id="errors-3"><a href="#errors-3">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-4"><a href="#examples-4">Examples</a></h5>
<p>Read signed 16 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x00</span>, <span class="number">0xc1</span>, <span class="number">0xff</span>, <span class="number">0x7c</span>]);
<span class="macro">assert_eq!</span>(<span class="number">193</span>, rdr.read_i16::&lt;BigEndian&gt;().unwrap());
<span class="macro">assert_eq!</span>(-<span class="number">132</span>, rdr.read_i16::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u24" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#165-169">source</a><h4 class="code-header">fn <a href="#method.read_u24" class="fnname">read_u24</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u32&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 24 bit integer from the underlying reader.</p>
<h5 id="errors-4"><a href="#errors-4">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-5"><a href="#examples-5">Examples</a></h5>
<p>Read unsigned 24 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x00</span>, <span class="number">0x01</span>, <span class="number">0x0b</span>]);
<span class="macro">assert_eq!</span>(<span class="number">267</span>, rdr.read_u24::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i24" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#191-195">source</a><h4 class="code-header">fn <a href="#method.read_i24" class="fnname">read_i24</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i32&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 24 bit integer from the underlying reader.</p>
<h5 id="errors-5"><a href="#errors-5">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-6"><a href="#examples-6">Examples</a></h5>
<p>Read signed 24 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0xff</span>, <span class="number">0x7a</span>, <span class="number">0x33</span>]);
<span class="macro">assert_eq!</span>(-<span class="number">34253</span>, rdr.read_i24::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u32" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#217-221">source</a><h4 class="code-header">fn <a href="#method.read_u32" class="fnname">read_u32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u32&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 32 bit integer from the underlying reader.</p>
<h5 id="errors-6"><a href="#errors-6">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-7"><a href="#examples-7">Examples</a></h5>
<p>Read unsigned 32 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x01</span>, <span class="number">0x0b</span>]);
<span class="macro">assert_eq!</span>(<span class="number">267</span>, rdr.read_u32::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i32" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#243-247">source</a><h4 class="code-header">fn <a href="#method.read_i32" class="fnname">read_i32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i32&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 32 bit integer from the underlying reader.</p>
<h5 id="errors-7"><a href="#errors-7">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-8"><a href="#examples-8">Examples</a></h5>
<p>Read signed 32 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0xff</span>, <span class="number">0xff</span>, <span class="number">0x7a</span>, <span class="number">0x33</span>]);
<span class="macro">assert_eq!</span>(-<span class="number">34253</span>, rdr.read_i32::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u48" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#269-273">source</a><h4 class="code-header">fn <a href="#method.read_u48" class="fnname">read_u48</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u64&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 48 bit integer from the underlying reader.</p>
<h5 id="errors-8"><a href="#errors-8">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-9"><a href="#examples-9">Examples</a></h5>
<p>Read unsigned 48 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0xb6</span>, <span class="number">0x71</span>, <span class="number">0x6b</span>, <span class="number">0xdc</span>, <span class="number">0x2b</span>, <span class="number">0x31</span>]);
<span class="macro">assert_eq!</span>(<span class="number">200598257150769</span>, rdr.read_u48::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i48" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#295-299">source</a><h4 class="code-header">fn <a href="#method.read_i48" class="fnname">read_i48</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i64&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 48 bit integer from the underlying reader.</p>
<h5 id="errors-9"><a href="#errors-9">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-10"><a href="#examples-10">Examples</a></h5>
<p>Read signed 48 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x9d</span>, <span class="number">0x71</span>, <span class="number">0xab</span>, <span class="number">0xe7</span>, <span class="number">0x97</span>, <span class="number">0x8f</span>]);
<span class="macro">assert_eq!</span>(-<span class="number">108363435763825</span>, rdr.read_i48::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u64" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#321-325">source</a><h4 class="code-header">fn <a href="#method.read_u64" class="fnname">read_u64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u64&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 64 bit integer from the underlying reader.</p>
<h5 id="errors-10"><a href="#errors-10">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-11"><a href="#examples-11">Examples</a></h5>
<p>Read an unsigned 64 bit big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x00</span>, <span class="number">0x03</span>, <span class="number">0x43</span>, <span class="number">0x95</span>, <span class="number">0x4d</span>, <span class="number">0x60</span>, <span class="number">0x86</span>, <span class="number">0x83</span>]);
<span class="macro">assert_eq!</span>(<span class="number">918733457491587</span>, rdr.read_u64::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i64" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#347-351">source</a><h4 class="code-header">fn <a href="#method.read_i64" class="fnname">read_i64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i64&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 64 bit integer from the underlying reader.</p>
<h5 id="errors-11"><a href="#errors-11">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-12"><a href="#examples-12">Examples</a></h5>
<p>Read a signed 64 bit big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x80</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>]);
<span class="macro">assert_eq!</span>(i64::min_value(), rdr.read_i64::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u128" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#376-380">source</a><h4 class="code-header">fn <a href="#method.read_u128" class="fnname">read_u128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;u128&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned 128 bit integer from the underlying reader.</p>
<h5 id="errors-12"><a href="#errors-12">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-13"><a href="#examples-13">Examples</a></h5>
<p>Read an unsigned 128 bit big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x00</span>, <span class="number">0x03</span>, <span class="number">0x43</span>, <span class="number">0x95</span>, <span class="number">0x4d</span>, <span class="number">0x60</span>, <span class="number">0x86</span>, <span class="number">0x83</span>,
<span class="number">0x00</span>, <span class="number">0x03</span>, <span class="number">0x43</span>, <span class="number">0x95</span>, <span class="number">0x4d</span>, <span class="number">0x60</span>, <span class="number">0x86</span>, <span class="number">0x83
</span>]);
<span class="macro">assert_eq!</span>(<span class="number">16947640962301618749969007319746179</span>, rdr.read_u128::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i128" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#402-406">source</a><h4 class="code-header">fn <a href="#method.read_i128" class="fnname">read_i128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;i128&gt;</h4></section></summary><div class="docblock"><p>Reads a signed 128 bit integer from the underlying reader.</p>
<h5 id="errors-13"><a href="#errors-13">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-14"><a href="#examples-14">Examples</a></h5>
<p>Read a signed 128 bit big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x80</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>]);
<span class="macro">assert_eq!</span>(i128::min_value(), rdr.read_i128::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_uint" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#427-431">source</a><h4 class="code-header">fn <a href="#method.read_uint" class="fnname">read_uint</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;u64&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned n-bytes integer from the underlying reader.</p>
<h5 id="errors-14"><a href="#errors-14">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-15"><a href="#examples-15">Examples</a></h5>
<p>Read an unsigned n-byte big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0x80</span>, <span class="number">0x74</span>, <span class="number">0xfa</span>]);
<span class="macro">assert_eq!</span>(<span class="number">8418554</span>, rdr.read_uint::&lt;BigEndian&gt;(<span class="number">3</span>).unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_int" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#452-456">source</a><h4 class="code-header">fn <a href="#method.read_int" class="fnname">read_int</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;i64&gt;</h4></section></summary><div class="docblock"><p>Reads a signed n-bytes integer from the underlying reader.</p>
<h5 id="errors-15"><a href="#errors-15">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-16"><a href="#examples-16">Examples</a></h5>
<p>Read an unsigned n-byte big-endian integer from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0xc1</span>, <span class="number">0xff</span>, <span class="number">0x7c</span>]);
<span class="macro">assert_eq!</span>(-<span class="number">4063364</span>, rdr.read_int::&lt;BigEndian&gt;(<span class="number">3</span>).unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_uint128" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#460-464">source</a><h4 class="code-header">fn <a href="#method.read_uint128" class="fnname">read_uint128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;u128&gt;</h4></section></summary><div class="docblock"><p>Reads an unsigned n-bytes integer from the underlying reader.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_int128" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#468-472">source</a><h4 class="code-header">fn <a href="#method.read_int128" class="fnname">read_int128</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, nbytes: usize) -&gt; Result&lt;i128&gt;</h4></section></summary><div class="docblock"><p>Reads a signed n-bytes integer from the underlying reader.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f32" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#499-503">source</a><h4 class="code-header">fn <a href="#method.read_f32" class="fnname">read_f32</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;f32&gt;</h4></section></summary><div class="docblock"><p>Reads a IEEE754 single-precision (4 bytes) floating point number from
the underlying reader.</p>
<h5 id="errors-16"><a href="#errors-16">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-17"><a href="#examples-17">Examples</a></h5>
<p>Read a big-endian single-precision floating point number from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f32;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x49</span>, <span class="number">0x0f</span>, <span class="number">0xdb</span>,
]);
<span class="macro">assert_eq!</span>(f32::consts::PI, rdr.read_f32::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f64" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#530-534">source</a><h4 class="code-header">fn <a href="#method.read_f64" class="fnname">read_f64</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self) -&gt; Result&lt;f64&gt;</h4></section></summary><div class="docblock"><p>Reads a IEEE754 double-precision (8 bytes) floating point number from
the underlying reader.</p>
<h5 id="errors-17"><a href="#errors-17">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-18"><a href="#examples-18">Examples</a></h5>
<p>Read a big-endian double-precision floating point number from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f64;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x09</span>, <span class="number">0x21</span>, <span class="number">0xfb</span>, <span class="number">0x54</span>, <span class="number">0x44</span>, <span class="number">0x2d</span>, <span class="number">0x18</span>,
]);
<span class="macro">assert_eq!</span>(f64::consts::PI, rdr.read_f64::&lt;BigEndian&gt;().unwrap());</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u16_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#562-569">source</a><h4 class="code-header">fn <a href="#method.read_u16_into" class="fnname">read_u16_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u16]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of unsigned 16 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-18"><a href="#errors-18">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-19"><a href="#examples-19">Examples</a></h5>
<p>Read a sequence of unsigned 16 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">5</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_u16_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u32_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#597-604">source</a><h4 class="code-header">fn <a href="#method.read_u32_into" class="fnname">read_u32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u32]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of unsigned 32 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-19"><a href="#errors-19">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-20"><a href="#examples-20">Examples</a></h5>
<p>Read a sequence of unsigned 32 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_u32_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u64_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#635-642">source</a><h4 class="code-header">fn <a href="#method.read_u64_into" class="fnname">read_u64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u64]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of unsigned 64 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-20"><a href="#errors-20">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-21"><a href="#examples-21">Examples</a></h5>
<p>Read a sequence of unsigned 64 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>,
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_u64_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_u128_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#673-683">source</a><h4 class="code-header">fn <a href="#method.read_u128_into" class="fnname">read_u128_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [u128]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of unsigned 128 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-21"><a href="#errors-21">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-22"><a href="#examples-22">Examples</a></h5>
<p>Read a sequence of unsigned 128 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>,
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_u128_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i8_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#716-719">source</a><h4 class="code-header">fn <a href="#method.read_i8_into" class="fnname">read_i8_into</a>(&amp;mut self, dst: &amp;mut [i8]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of signed 8 bit integers from the underlying reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<p>Note that since each <code>i8</code> is a single byte, no byte order conversions
are used. This method is included because it provides a safe, simple
way for the caller to read into a <code>&amp;mut [i8]</code> buffer. (Without this
method, the caller would have to either use <code>unsafe</code> code or convert
each byte to <code>i8</code> individually.)</p>
<h5 id="errors-22"><a href="#errors-22">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-23"><a href="#examples-23">Examples</a></h5>
<p>Read a sequence of signed 8 bit integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">251</span>, <span class="number">3</span>]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">3</span>];
rdr.read_i8_into(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">2</span>, -<span class="number">5</span>, <span class="number">3</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i16_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#747-754">source</a><h4 class="code-header">fn <a href="#method.read_i16_into" class="fnname">read_i16_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i16]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of signed 16 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-23"><a href="#errors-23">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-24"><a href="#examples-24">Examples</a></h5>
<p>Read a sequence of signed 16 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">2</span>, <span class="number">5</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_i16_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i32_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#782-789">source</a><h4 class="code-header">fn <a href="#method.read_i32_into" class="fnname">read_i32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i32]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of signed 32 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-24"><a href="#errors-24">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-25"><a href="#examples-25">Examples</a></h5>
<p>Read a sequence of signed 32 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[<span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_i32_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i64_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#820-827">source</a><h4 class="code-header">fn <a href="#method.read_i64_into" class="fnname">read_i64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i64]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of signed 64 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-25"><a href="#errors-25">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-26"><a href="#examples-26">Examples</a></h5>
<p>Read a sequence of signed 64 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>,
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_i64_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_i128_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#858-868">source</a><h4 class="code-header">fn <a href="#method.read_i128_into" class="fnname">read_i128_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [i128]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of signed 128 bit integers from the underlying
reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-26"><a href="#errors-26">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-27"><a href="#examples-27">Examples</a></h5>
<p>Read a sequence of signed 128 bit big-endian integers from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">2</span>, <span class="number">5</span>,
<span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">3</span>, <span class="number">0</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0</span>; <span class="number">2</span>];
rdr.read_i128_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([<span class="number">517</span>, <span class="number">768</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f32_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#902-909">source</a><h4 class="code-header">fn <a href="#method.read_f32_into" class="fnname">read_f32_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [f32]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of IEEE754 single-precision (4 bytes) floating
point numbers from the underlying reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-27"><a href="#errors-27">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-28"><a href="#examples-28">Examples</a></h5>
<p>Read a sequence of big-endian single-precision floating point number
from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f32;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x49</span>, <span class="number">0x0f</span>, <span class="number">0xdb</span>,
<span class="number">0x3f</span>, <span class="number">0x80</span>, <span class="number">0x00</span>, <span class="number">0x00</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0.0</span>; <span class="number">2</span>];
rdr.read_f32_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([f32::consts::PI, <span class="number">1.0</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f32_into_unchecked" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#948-953">source</a><h4 class="code-header">fn <a href="#method.read_f32_into_unchecked" class="fnname">read_f32_into_unchecked</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;dst: &amp;mut [f32]<br>) -&gt; Result&lt;()&gt;</h4></section></summary><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 1.2.0: please use <code>read_f32_into</code> instead</span></div></span><div class="docblock"><p><strong>DEPRECATED</strong>.</p>
<p>This method is deprecated. Use <code>read_f32_into</code> instead.</p>
<p>Reads a sequence of IEEE754 single-precision (4 bytes) floating
point numbers from the underlying reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-28"><a href="#errors-28">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-29"><a href="#examples-29">Examples</a></h5>
<p>Read a sequence of big-endian single-precision floating point number
from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f32;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x49</span>, <span class="number">0x0f</span>, <span class="number">0xdb</span>,
<span class="number">0x3f</span>, <span class="number">0x80</span>, <span class="number">0x00</span>, <span class="number">0x00</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0.0</span>; <span class="number">2</span>];
rdr.read_f32_into_unchecked::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([f32::consts::PI, <span class="number">1.0</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f64_into" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#987-994">source</a><h4 class="code-header">fn <a href="#method.read_f64_into" class="fnname">read_f64_into</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(&amp;mut self, dst: &amp;mut [f64]) -&gt; Result&lt;()&gt;</h4></section></summary><div class="docblock"><p>Reads a sequence of IEEE754 double-precision (8 bytes) floating
point numbers from the underlying reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="errors-29"><a href="#errors-29">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-30"><a href="#examples-30">Examples</a></h5>
<p>Read a sequence of big-endian single-precision floating point number
from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f64;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x09</span>, <span class="number">0x21</span>, <span class="number">0xfb</span>, <span class="number">0x54</span>, <span class="number">0x44</span>, <span class="number">0x2d</span>, <span class="number">0x18</span>,
<span class="number">0x3f</span>, <span class="number">0xF0</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0.0</span>; <span class="number">2</span>];
rdr.read_f64_into::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([f64::consts::PI, <span class="number">1.0</span>], dst);</code></pre></div>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_f64_into_unchecked" class="method has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#1039-1044">source</a><h4 class="code-header">fn <a href="#method.read_f64_into_unchecked" class="fnname">read_f64_into_unchecked</a>&lt;T:&nbsp;<a class="trait" href="trait.ByteOrder.html" title="trait byteorder::ByteOrder">ByteOrder</a>&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;dst: &amp;mut [f64]<br>) -&gt; Result&lt;()&gt;</h4></section></summary><span class="item-info"><div class="stab deprecated"><span class="emoji">👎</span><span>Deprecated since 1.2.0: please use <code>read_f64_into</code> instead</span></div></span><div class="docblock"><p><strong>DEPRECATED</strong>.</p>
<p>This method is deprecated. Use <code>read_f64_into</code> instead.</p>
<p>Reads a sequence of IEEE754 double-precision (8 bytes) floating
point numbers from the underlying reader.</p>
<p>The given buffer is either filled completely or an error is returned.
If an error is returned, the contents of <code>dst</code> are unspecified.</p>
<h5 id="safety"><a href="#safety">Safety</a></h5>
<p>This method is unsafe because there are no guarantees made about the
floating point values. In particular, this method does not check for
signaling NaNs, which may result in undefined behavior.</p>
<h5 id="errors-30"><a href="#errors-30">Errors</a></h5>
<p>This method returns the same errors as <a href="https://doc.rust-lang.org/std/io/trait.Read.html#method.read_exact"><code>Read::read_exact</code></a>.</p>
<h5 id="examples-31"><a href="#examples-31">Examples</a></h5>
<p>Read a sequence of big-endian single-precision floating point number
from a <code>Read</code>:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::f64;
<span class="kw">use </span>std::io::Cursor;
<span class="kw">use </span>byteorder::{BigEndian, ReadBytesExt};
<span class="kw">let </span><span class="kw-2">mut </span>rdr = Cursor::new(<span class="macro">vec!</span>[
<span class="number">0x40</span>, <span class="number">0x09</span>, <span class="number">0x21</span>, <span class="number">0xfb</span>, <span class="number">0x54</span>, <span class="number">0x44</span>, <span class="number">0x2d</span>, <span class="number">0x18</span>,
<span class="number">0x3f</span>, <span class="number">0xF0</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>, <span class="number">0x00</span>,
]);
<span class="kw">let </span><span class="kw-2">mut </span>dst = [<span class="number">0.0</span>; <span class="number">2</span>];
rdr.read_f64_into_unchecked::&lt;BigEndian&gt;(<span class="kw-2">&amp;mut </span>dst).unwrap();
<span class="macro">assert_eq!</span>([f64::consts::PI, <span class="number">1.0</span>], dst);</code></pre></div>
</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div id="implementors-list"><section id="impl-ReadBytesExt-for-R" class="impl has-srclink"><a class="srclink rightside" href="../src/byteorder/io.rs.html#1049">source</a><a href="#impl-ReadBytesExt-for-R" class="anchor"></a><h3 class="code-header">impl&lt;R:&nbsp;Read + ?Sized&gt; <a class="trait" href="trait.ReadBytesExt.html" title="trait byteorder::ReadBytesExt">ReadBytesExt</a> for R</h3></section><div class="docblock"><p>All types that implement <code>Read</code> get methods defined in <code>ReadBytesExt</code>
for free.</p>
</div></div><script src="../implementors/byteorder/io/trait.ReadBytesExt.js" async></script></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="byteorder" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>