250 lines
130 KiB
HTML
250 lines
130 KiB
HTML
<!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="Runs blocking I/O on a thread pool."><title>Unblock in blocking - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-42caa33d.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="blocking" data-themes="" data-resource-suffix="" data-rustdoc-version="1.84.0 (9fc6b4312 2025-01-07)" data-channel="1.84.0" data-search-js="search-92e6798f.js" data-settings-js="settings-0f613d39.js" ><script src="../static.files/storage-59e33391.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-893ab5e7.css"></noscript><link rel="icon" href="https://raw.githubusercontent.com/smol-rs/smol/master/assets/images/logo_fullsize_transparent.png"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button><a class="logo-container" href="../blocking/index.html"><img src="https://raw.githubusercontent.com/smol-rs/smol/master/assets/images/logo_fullsize_transparent.png" alt=""></a></nav><nav class="sidebar"><div class="sidebar-crate"><a class="logo-container" href="../blocking/index.html"><img src="https://raw.githubusercontent.com/smol-rs/smol/master/assets/images/logo_fullsize_transparent.png" alt="logo"></a><h2><a href="../blocking/index.html">blocking</a><span class="version">1.6.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Unblock</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#caveats" title="Caveats">Caveats</a><ul><li><a href="#reading" title="Reading">Reading</a></li><li><a href="#writing" title="Writing">Writing</a></li><li><a href="#seeking" title="Seeking">Seeking</a></li></ul></li><li><a href="#examples" title="Examples">Examples</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.get_mut" title="get_mut">get_mut</a></li><li><a href="#method.into_inner" title="into_inner">into_inner</a></li><li><a href="#method.new" title="new">new</a></li><li><a href="#method.with_capacity" title="with_capacity">with_capacity</a></li><li><a href="#method.with_mut" title="with_mut">with_mut</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-AsyncRead-for-Unblock%3CT%3E" title="AsyncRead">AsyncRead</a></li><li><a href="#impl-AsyncSeek-for-Unblock%3CT%3E" title="AsyncSeek">AsyncSeek</a></li><li><a href="#impl-AsyncWrite-for-Unblock%3CT%3E" title="AsyncWrite">AsyncWrite</a></li><li><a href="#impl-Debug-for-Unblock%3CT%3E" title="Debug">Debug</a></li><li><a href="#impl-Stream-for-Unblock%3CT%3E" title="Stream">Stream</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Unblock%3CT%3E" title="!RefUnwindSafe">!RefUnwindSafe</a></li><li><a href="#impl-UnwindSafe-for-Unblock%3CT%3E" title="!UnwindSafe">!UnwindSafe</a></li><li><a href="#impl-Freeze-for-Unblock%3CT%3E" title="Freeze">Freeze</a></li><li><a href="#impl-Send-for-Unblock%3CT%3E" title="Send">Send</a></li><li><a href="#impl-Sync-for-Unblock%3CT%3E" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-Unblock%3CT%3E" title="Unpin">Unpin</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-AsyncReadExt-for-R" title="AsyncReadExt">AsyncReadExt</a></li><li><a href="#impl-AsyncSeekExt-for-S" title="AsyncSeekExt">AsyncSeekExt</a></li><li><a href="#impl-AsyncWriteExt-for-W" title="AsyncWriteExt">AsyncWriteExt</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-StreamExt-for-S" title="StreamExt">StreamExt</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li><li><a href="#impl-TryStream-for-S" title="TryStream">TryStream</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate blocking</a></h2></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="index.html">blocking</a></span><h1>Struct <span class="struct">Unblock</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/blocking/lib.rs.html#447-450">Source</a> </span></div><pre class="rust item-decl"><code>pub struct Unblock<T> { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Runs blocking I/O on a thread pool.</p>
|
|
<p>Blocking I/O must be isolated from async code. This type moves blocking I/O operations onto a
|
|
special thread pool while exposing a familiar async interface.</p>
|
|
<p>This type implements traits <a href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream"><code>Stream</code></a>, <a href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead"><code>AsyncRead</code></a>, <a href="../futures_io/if_std/trait.AsyncWrite.html" title="trait futures_io::if_std::AsyncWrite"><code>AsyncWrite</code></a>, or <a href="../futures_io/if_std/trait.AsyncSeek.html" title="trait futures_io::if_std::AsyncSeek"><code>AsyncSeek</code></a> if the
|
|
inner type implements <a href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator"><code>Iterator</code></a>, <a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Read.html" title="trait std::io::Read"><code>Read</code></a>, <a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Write.html" title="trait std::io::Write"><code>Write</code></a>, or <a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Seek.html" title="trait std::io::Seek"><code>Seek</code></a>, respectively.</p>
|
|
<h2 id="caveats"><a class="doc-anchor" href="#caveats">§</a>Caveats</h2>
|
|
<p><a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> is a low-level primitive, and as such it comes with some caveats.</p>
|
|
<p>For higher-level primitives built on top of <a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a>, look into <a href="https://github.com/smol-rs/async-fs"><code>async-fs</code></a> or
|
|
<a href="https://github.com/smol-rs/async-process"><code>async-process</code></a> (on Windows).</p>
|
|
<p><a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> communicates with I/O operations on the thread pool through a pipe. That means an
|
|
async read/write operation simply receives/sends some bytes from/into the pipe. When in reading
|
|
mode, the thread pool reads bytes from the I/O handle and forwards them into the pipe until it
|
|
becomes full. When in writing mode, the thread pool reads bytes from the pipe and forwards them
|
|
into the I/O handle.</p>
|
|
<p>Use <a href="struct.Unblock.html#method.with_capacity" title="associated function blocking::Unblock::with_capacity"><code>Unblock::with_capacity()</code></a> to configure the capacity of the pipe.</p>
|
|
<h4 id="reading"><a class="doc-anchor" href="#reading">§</a>Reading</h4>
|
|
<p>If you create an <a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a><code><</code><a href="https://doc.rust-lang.org/1.84.0/std/io/stdio/struct.Stdin.html" title="struct std::io::stdio::Stdin"><code>Stdin</code></a><code>></code>, read some bytes from it,
|
|
and then drop it, a blocked read operation may keep hanging on the thread pool. The next
|
|
attempt to read from stdin will lose bytes read by the hanging operation. This is a difficult
|
|
problem to solve, so make sure you only use a single stdin handle for the duration of the
|
|
entire program.</p>
|
|
<h4 id="writing"><a class="doc-anchor" href="#writing">§</a>Writing</h4>
|
|
<p>If writing data through the <a href="../futures_io/if_std/trait.AsyncWrite.html" title="trait futures_io::if_std::AsyncWrite"><code>AsyncWrite</code></a> trait, make sure to flush before dropping the
|
|
<a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> handle or some buffered data might get lost.</p>
|
|
<h4 id="seeking"><a class="doc-anchor" href="#seeking">§</a>Seeking</h4>
|
|
<p>Because of buffering in the pipe, if <a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> wraps a <a href="https://doc.rust-lang.org/1.84.0/std/fs/struct.File.html" title="struct std::fs::File"><code>File</code></a>, a single
|
|
read operation may move the file cursor farther than is the span of the operation. In fact,
|
|
reading just keeps going in the background until the pipe gets full. Keep this mind when
|
|
using <a href="../futures_io/if_std/trait.AsyncSeek.html" title="trait futures_io::if_std::AsyncSeek"><code>AsyncSeek</code></a> with <a href="https://doc.rust-lang.org/1.84.0/std/io/enum.SeekFrom.html#variant.Current" title="variant std::io::SeekFrom::Current">relative</a> offsets.</p>
|
|
<h2 id="examples"><a class="doc-anchor" href="#examples">§</a>Examples</h2>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::Unblock;
|
|
<span class="kw">use </span>futures_lite::prelude::<span class="kw-2">*</span>;
|
|
|
|
<span class="kw">let </span><span class="kw-2">mut </span>stdout = Unblock::new(std::io::stdout());
|
|
stdout.write_all(<span class="string">b"Hello world!"</span>).<span class="kw">await</span><span class="question-mark">?</span>;
|
|
stdout.flush().<span class="kw">await</span><span class="question-mark">?</span>;</code></pre></div>
|
|
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#452-677">Source</a><a href="#impl-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/blocking/lib.rs.html#462-467">Source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(io: T) -> <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h4></section></summary><div class="docblock"><p>Wraps a blocking I/O handle into the async <a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> interface.</p>
|
|
<h5 id="examples-1"><a class="doc-anchor" href="#examples-1">§</a>Examples</h5>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::Unblock;
|
|
|
|
<span class="kw">let </span>stdin = Unblock::new(std::io::stdin());</code></pre></div>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.with_capacity" class="method"><a class="src rightside" href="../src/blocking/lib.rs.html#488-493">Source</a><h4 class="code-header">pub fn <a href="#method.with_capacity" class="fn">with_capacity</a>(cap: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>, io: T) -> <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h4></section></summary><div class="docblock"><p>Wraps a blocking I/O handle into the async <a href="struct.Unblock.html" title="struct blocking::Unblock"><code>Unblock</code></a> interface with a custom buffer
|
|
capacity.</p>
|
|
<p>When communicating with the inner <a href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream"><code>Stream</code></a>/<a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Read.html" title="trait std::io::Read"><code>Read</code></a>/<a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Write.html" title="trait std::io::Write"><code>Write</code></a> type from async code, data
|
|
transferred between blocking and async code goes through a buffer of limited capacity. This
|
|
constructor configures that capacity.</p>
|
|
<p>The default capacity is:</p>
|
|
<ul>
|
|
<li>For <a href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator"><code>Iterator</code></a> types: 8192 items.</li>
|
|
<li>For <a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Read.html" title="trait std::io::Read"><code>Read</code></a>/<a href="https://doc.rust-lang.org/1.84.0/std/io/trait.Write.html" title="trait std::io::Write"><code>Write</code></a> types: 8 MB.</li>
|
|
</ul>
|
|
<h5 id="examples-2"><a class="doc-anchor" href="#examples-2">§</a>Examples</h5>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::Unblock;
|
|
|
|
<span class="kw">let </span>stdout = Unblock::with_capacity(<span class="number">64 </span>* <span class="number">1024</span>, std::io::stdout());</code></pre></div>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.get_mut" class="method"><a class="src rightside" href="../src/blocking/lib.rs.html#513-528">Source</a><h4 class="code-header">pub async fn <a href="#method.get_mut" class="fn">get_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class="docblock"><p>Gets a mutable reference to the blocking I/O handle.</p>
|
|
<p>This is an async method because the I/O handle might be on the thread pool and needs to
|
|
be moved onto the current thread before we can get a reference to it.</p>
|
|
<h5 id="examples-3"><a class="doc-anchor" href="#examples-3">§</a>Examples</h5>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::{unblock, Unblock};
|
|
<span class="kw">use </span>std::fs::File;
|
|
|
|
<span class="kw">let </span>file = unblock(|| File::create(<span class="string">"file.txt"</span>)).<span class="kw">await</span><span class="question-mark">?</span>;
|
|
<span class="kw">let </span><span class="kw-2">mut </span>file = Unblock::new(file);
|
|
|
|
<span class="kw">let </span>metadata = file.get_mut().<span class="kw">await</span>.metadata()<span class="question-mark">?</span>;</code></pre></div>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.with_mut" class="method"><a class="src rightside" href="../src/blocking/lib.rs.html#545-577">Source</a><h4 class="code-header">pub async fn <a href="#method.with_mut" class="fn">with_mut</a><R, F>(&mut self, op: F) -> R<div class="where">where
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut T</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static,
|
|
R: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static,
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static,</div></h4></section></summary><div class="docblock"><p>Performs a blocking operation on the I/O handle.</p>
|
|
<h5 id="examples-4"><a class="doc-anchor" href="#examples-4">§</a>Examples</h5>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::{unblock, Unblock};
|
|
<span class="kw">use </span>std::fs::File;
|
|
|
|
<span class="kw">let </span>file = unblock(|| File::create(<span class="string">"file.txt"</span>)).<span class="kw">await</span><span class="question-mark">?</span>;
|
|
<span class="kw">let </span><span class="kw-2">mut </span>file = Unblock::new(file);
|
|
|
|
<span class="kw">let </span>metadata = file.with_mut(|f| f.metadata()).<span class="kw">await</span><span class="question-mark">?</span>;</code></pre></div>
|
|
</div></details><details class="toggle method-toggle" open><summary><section id="method.into_inner" class="method"><a class="src rightside" href="../src/blocking/lib.rs.html#598-617">Source</a><h4 class="code-header">pub async fn <a href="#method.into_inner" class="fn">into_inner</a>(self) -> T</h4></section></summary><div class="docblock"><p>Extracts the inner blocking I/O handle.</p>
|
|
<p>This is an async method because the I/O handle might be on the thread pool and needs to
|
|
be moved onto the current thread before we can extract it.</p>
|
|
<h5 id="examples-5"><a class="doc-anchor" href="#examples-5">§</a>Examples</h5>
|
|
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>blocking::{unblock, Unblock};
|
|
<span class="kw">use </span>futures_lite::prelude::<span class="kw-2">*</span>;
|
|
<span class="kw">use </span>std::fs::File;
|
|
|
|
<span class="kw">let </span>file = unblock(|| File::create(<span class="string">"file.txt"</span>)).<span class="kw">await</span><span class="question-mark">?</span>;
|
|
<span class="kw">let </span>file = Unblock::new(file);
|
|
|
|
<span class="kw">let </span>file = file.into_inner().<span class="kw">await</span>;</code></pre></div>
|
|
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncRead-for-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#803-869">Source</a><a href="#impl-AsyncRead-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/std/io/trait.Read.html" title="trait std::io::Read">Read</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static> <a class="trait" href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead">AsyncRead</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_read" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#804-868">Source</a><a href="#method.poll_read" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncRead.html#tymethod.poll_read" class="fn">poll_read</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
buf: &mut [<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>],
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="type" href="https://doc.rust-lang.org/1.84.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>>></h4></section></summary><div class='docblock'>Attempt to read from the <code>AsyncRead</code> into <code>buf</code>. <a href="../futures_io/if_std/trait.AsyncRead.html#tymethod.poll_read">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.poll_read_vectored" class="method trait-impl"><a class="src rightside" href="../src/futures_io/lib.rs.html#91-95">Source</a><a href="#method.poll_read_vectored" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncRead.html#method.poll_read_vectored" class="fn">poll_read_vectored</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
bufs: &mut [<a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/struct.IoSliceMut.html" title="struct std::io::IoSliceMut">IoSliceMut</a><'_>],
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>, <a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>>></h4></section></summary><div class='docblock'>Attempt to read from the <code>AsyncRead</code> into <code>bufs</code> using vectored
|
|
IO operations. <a href="../futures_io/if_std/trait.AsyncRead.html#method.poll_read_vectored">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncSeek-for-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#954-997">Source</a><a href="#impl-AsyncSeek-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/std/io/trait.Seek.html" title="trait std::io::Seek">Seek</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static> <a class="trait" href="../futures_io/if_std/trait.AsyncSeek.html" title="trait futures_io::if_std::AsyncSeek">AsyncSeek</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_seek" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#955-996">Source</a><a href="#method.poll_seek" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncSeek.html#tymethod.poll_seek" class="fn">poll_seek</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
pos: <a class="enum" href="https://doc.rust-lang.org/1.84.0/std/io/enum.SeekFrom.html" title="enum std::io::SeekFrom">SeekFrom</a>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="type" href="https://doc.rust-lang.org/1.84.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>>></h4></section></summary><div class='docblock'>Attempt to seek to an offset, in bytes, in a stream. <a href="../futures_io/if_std/trait.AsyncSeek.html#tymethod.poll_seek">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AsyncWrite-for-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#871-952">Source</a><a href="#impl-AsyncWrite-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static> <a class="trait" href="../futures_io/if_std/trait.AsyncWrite.html" title="trait futures_io::if_std::AsyncWrite">AsyncWrite</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_write" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#872-923">Source</a><a href="#method.poll_write" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_write" class="fn">poll_write</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
buf: &[<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>],
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="type" href="https://doc.rust-lang.org/1.84.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>>></h4></section></summary><div class='docblock'>Attempt to write bytes from <code>buf</code> into the object. <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_write">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.poll_flush" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#925-942">Source</a><a href="#method.poll_flush" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_flush" class="fn">poll_flush</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>, cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="type" href="https://doc.rust-lang.org/1.84.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.unit.html">()</a>>></h4></section></summary><div class='docblock'>Attempt to flush the object, ensuring that any buffered data reach
|
|
their destination. <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_flush">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.poll_close" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#944-951">Source</a><a href="#method.poll_close" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_close" class="fn">poll_close</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>, cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="type" href="https://doc.rust-lang.org/1.84.0/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.unit.html">()</a>>></h4></section></summary><div class='docblock'>Attempt to close the object. <a href="../futures_io/if_std/trait.AsyncWrite.html#tymethod.poll_close">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.poll_write_vectored" class="method trait-impl"><a class="src rightside" href="../src/futures_io/lib.rs.html#161-165">Source</a><a href="#method.poll_write_vectored" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_io/if_std/trait.AsyncWrite.html#method.poll_write_vectored" class="fn">poll_write_vectored</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
bufs: &[<a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a><'_>],
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>, <a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>>></h4></section></summary><div class='docblock'>Attempt to write bytes from <code>bufs</code> into the object using vectored
|
|
IO operations. <a href="../futures_io/if_std/trait.AsyncWrite.html#method.poll_write_vectored">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#679-708">Source</a><a href="#impl-Debug-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#680-707">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.84.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.84.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Stream-for-Unblock%3CT%3E" class="impl"><a class="src rightside" href="../src/blocking/lib.rs.html#737-801">Source</a><a href="#impl-Stream-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static> <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T><div class="where">where
|
|
T::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#741">Source</a><a href="#associatedtype.Item" class="anchor">§</a><h4 class="code-header">type <a href="../futures_core/stream/trait.Stream.html#associatedtype.Item" class="associatedtype">Item</a> = <T as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a></h4></section></summary><div class='docblock'>Values yielded by the stream.</div></details><details class="toggle method-toggle" open><summary><section id="method.poll_next" class="method trait-impl"><a class="src rightside" href="../src/blocking/lib.rs.html#743-800">Source</a><a href="#method.poll_next" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_core/stream/trait.Stream.html#tymethod.poll_next" class="fn">poll_next</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><&mut Self>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Attempt to pull out the next value of this stream, registering the
|
|
current task for wakeup if the value is not yet available, and returning
|
|
<code>None</code> if the stream is exhausted. <a href="../futures_core/stream/trait.Stream.html#tymethod.poll_next">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.size_hint" class="method trait-impl"><a class="src rightside" href="../src/futures_core/stream.rs.html#105">Source</a><a href="#method.size_hint" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_core/stream/trait.Stream.html#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>>)</h4></section></summary><div class='docblock'>Returns the bounds on the remaining length of the stream. <a href="../futures_core/stream/trait.Stream.html#method.size_hint">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-Unblock%3CT%3E" class="impl"><a href="#impl-Freeze-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section><section id="impl-RefUnwindSafe-for-Unblock%3CT%3E" class="impl"><a href="#impl-RefUnwindSafe-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> !<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section><section id="impl-Send-for-Unblock%3CT%3E" class="impl"><a href="#impl-Send-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T><div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Sync-for-Unblock%3CT%3E" class="impl"><a href="#impl-Sync-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T><div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-Unpin-for-Unblock%3CT%3E" class="impl"><a href="#impl-Unpin-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section><section id="impl-UnwindSafe-for-Unblock%3CT%3E" class="impl"><a href="#impl-UnwindSafe-for-Unblock%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> !<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Unblock.html" title="struct blocking::Unblock">Unblock</a><T></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
|
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsyncReadExt-for-R" class="impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2194">Source</a><a href="#impl-AsyncReadExt-for-R" class="anchor">§</a><h3 class="code-header">impl<R> <a class="trait" href="../futures_lite/io/trait.AsyncReadExt.html" title="trait futures_lite::io::AsyncReadExt">AsyncReadExt</a> for R<div class="where">where
|
|
R: <a class="trait" href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead">AsyncRead</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.read" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#1989-1991">Source</a><a href="#method.read" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read" class="fn">read</a><'a>(&'a mut self, buf: &'a mut [<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>]) -> <a class="struct" href="../futures_lite/io/struct.ReadFuture.html" title="struct futures_lite::io::ReadFuture">ReadFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Reads some bytes from the byte stream. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.read_vectored" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2001-2006">Source</a><a href="#method.read_vectored" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_vectored" class="fn">read_vectored</a><'a>(
|
|
&'a mut self,
|
|
bufs: &'a mut [<a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/struct.IoSliceMut.html" title="struct std::io::IoSliceMut">IoSliceMut</a><'a>],
|
|
) -> <a class="struct" href="../futures_lite/io/struct.ReadVectoredFuture.html" title="struct futures_lite::io::ReadVectoredFuture">ReadVectoredFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Like <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read" title="method futures_lite::io::AsyncReadExt::read"><code>read()</code></a>, except it reads into a slice of buffers. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_vectored">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.read_to_end" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2029-2031">Source</a><a href="#method.read_to_end" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_to_end" class="fn">read_to_end</a><'a>(
|
|
&'a mut self,
|
|
buf: &'a mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>>,
|
|
) -> <a class="struct" href="../futures_lite/io/struct.ReadToEndFuture.html" title="struct futures_lite::io::ReadToEndFuture">ReadToEndFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Reads the entire contents and appends them to a <a href="https://doc.rust-lang.org/1.84.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec"><code>Vec</code></a>. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_to_end">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.read_to_string" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2059-2061">Source</a><a href="#method.read_to_string" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_to_string" class="fn">read_to_string</a><'a>(
|
|
&'a mut self,
|
|
buf: &'a mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>,
|
|
) -> <a class="struct" href="../futures_lite/io/struct.ReadToStringFuture.html" title="struct futures_lite::io::ReadToStringFuture">ReadToStringFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Reads the entire contents and appends them to a <a href="https://doc.rust-lang.org/1.84.0/alloc/string/struct.String.html" title="struct alloc::string::String"><code>String</code></a>. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_to_string">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.read_exact" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2088-2090">Source</a><a href="#method.read_exact" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_exact" class="fn">read_exact</a><'a>(&'a mut self, buf: &'a mut [<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>]) -> <a class="struct" href="../futures_lite/io/struct.ReadExactFuture.html" title="struct futures_lite::io::ReadExactFuture">ReadExactFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Reads the exact number of bytes required to fill <code>buf</code>. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.read_exact">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-1" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2114-2116">Source</a><a href="#method.take-1" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.take" class="fn">take</a>(self, limit: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>) -> <a class="struct" href="../futures_lite/io/struct.Take.html" title="struct futures_lite::io::Take">Take</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Creates an adapter which will read at most <code>limit</code> bytes from it. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.bytes" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2138-2140">Source</a><a href="#method.bytes" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.bytes" class="fn">bytes</a>(self) -> <a class="struct" href="../futures_lite/io/struct.Bytes.html" title="struct futures_lite::io::Bytes">Bytes</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Converts this <a href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead"><code>AsyncRead</code></a> into a <a href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream"><code>Stream</code></a> of bytes. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.bytes">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-1" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2165-2167">Source</a><a href="#method.chain-1" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.chain" class="fn">chain</a><R>(self, next: R) -> <a class="struct" href="../futures_lite/io/struct.Chain.html" title="struct futures_lite::io::Chain">Chain</a><Self, R><div class="where">where
|
|
R: <a class="trait" href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead">AsyncRead</a>,
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Creates an adapter which will chain this stream with another. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.boxed_reader" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2186-2188">Source</a><a href="#method.boxed_reader" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncReadExt.html#method.boxed_reader" class="fn">boxed_reader</a><'a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><<a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="../futures_io/if_std/trait.AsyncRead.html" title="trait futures_io::if_std::AsyncRead">AsyncRead</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a,</div></h4></section></summary><div class='docblock'>Boxes the reader and changes its type to <code>dyn AsyncRead + Send + 'a</code>. <a href="../futures_lite/io/trait.AsyncReadExt.html#method.boxed_reader">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsyncSeekExt-for-S" class="impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2751">Source</a><a href="#impl-AsyncSeekExt-for-S" class="anchor">§</a><h3 class="code-header">impl<S> <a class="trait" href="../futures_lite/io/trait.AsyncSeekExt.html" title="trait futures_lite::io::AsyncSeekExt">AsyncSeekExt</a> for S<div class="where">where
|
|
S: <a class="trait" href="../futures_io/if_std/trait.AsyncSeek.html" title="trait futures_io::if_std::AsyncSeek">AsyncSeek</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.seek" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2743-2745">Source</a><a href="#method.seek" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncSeekExt.html#method.seek" class="fn">seek</a>(&mut self, pos: <a class="enum" href="https://doc.rust-lang.org/1.84.0/std/io/enum.SeekFrom.html" title="enum std::io::SeekFrom">SeekFrom</a>) -> <a class="struct" href="../futures_lite/io/struct.SeekFuture.html" title="struct futures_lite::io::SeekFuture">SeekFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Seeks to a new position in a byte stream. <a href="../futures_lite/io/trait.AsyncSeekExt.html#method.seek">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsyncWriteExt-for-W" class="impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2900">Source</a><a href="#impl-AsyncWriteExt-for-W" class="anchor">§</a><h3 class="code-header">impl<W> <a class="trait" href="../futures_lite/io/trait.AsyncWriteExt.html" title="trait futures_lite::io::AsyncWriteExt">AsyncWriteExt</a> for W<div class="where">where
|
|
W: <a class="trait" href="../futures_io/if_std/trait.AsyncWrite.html" title="trait futures_io::if_std::AsyncWrite">AsyncWrite</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.write" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2795-2797">Source</a><a href="#method.write" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write" class="fn">write</a><'a>(&'a mut self, buf: &'a [<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>]) -> <a class="struct" href="../futures_lite/io/struct.WriteFuture.html" title="struct futures_lite::io::WriteFuture">WriteFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Writes some bytes into the byte stream. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.write_vectored" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2807-2809">Source</a><a href="#method.write_vectored" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write_vectored" class="fn">write_vectored</a><'a>(
|
|
&'a mut self,
|
|
bufs: &'a [<a class="struct" href="https://doc.rust-lang.org/1.84.0/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a><'a>],
|
|
) -> <a class="struct" href="../futures_lite/io/struct.WriteVectoredFuture.html" title="struct futures_lite::io::WriteVectoredFuture">WriteVectoredFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Like <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write" title="method futures_lite::io::AsyncWriteExt::write"><code>write()</code></a>, except that it writes a slice of buffers. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write_vectored">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.write_all" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2832-2834">Source</a><a href="#method.write_all" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write_all" class="fn">write_all</a><'a>(&'a mut self, buf: &'a [<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>]) -> <a class="struct" href="../futures_lite/io/struct.WriteAllFuture.html" title="struct futures_lite::io::WriteAllFuture">WriteAllFuture</a><'a, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Writes an entire buffer into the byte stream. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.write_all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flush" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2854-2856">Source</a><a href="#method.flush" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.flush" class="fn">flush</a>(&mut self) -> <a class="struct" href="../futures_lite/io/struct.FlushFuture.html" title="struct futures_lite::io::FlushFuture">FlushFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Flushes the stream to ensure that all buffered contents reach their destination. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.flush">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.close" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2875-2877">Source</a><a href="#method.close" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.close" class="fn">close</a>(&mut self) -> <a class="struct" href="../futures_lite/io/struct.CloseFuture.html" title="struct futures_lite::io::CloseFuture">CloseFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Closes the writer. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.close">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.boxed_writer" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/io.rs.html#2892-2894">Source</a><a href="#method.boxed_writer" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.boxed_writer" class="fn">boxed_writer</a><'a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><<a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="../futures_io/if_std/trait.AsyncWrite.html" title="trait futures_io::if_std::AsyncWrite">AsyncWrite</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a,</div></h4></section></summary><div class='docblock'>Boxes the writer and changes its type to <code>dyn AsyncWrite + Send + 'a</code>. <a href="../futures_lite/io/trait.AsyncWriteExt.html#method.boxed_writer">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#209">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#211">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#217">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#218">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#765">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#768">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#748-750">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#758">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
|
|
<p>That is, this conversion is whatever the implementation of
|
|
<code><a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-StreamExt-for-S" class="impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1866">Source</a><a href="#impl-StreamExt-for-S" class="anchor">§</a><h3 class="code-header">impl<S> <a class="trait" href="../futures_lite/stream/trait.StreamExt.html" title="trait futures_lite::stream::StreamExt">StreamExt</a> for S<div class="where">where
|
|
S: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_next-1" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#669-671">Source</a><a href="#method.poll_next-1" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.poll_next" class="fn">poll_next</a>(&mut self, cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>A convenience for calling <a href="../futures_core/stream/trait.Stream.html#tymethod.poll_next" title="method futures_core::stream::Stream::poll_next"><code>Stream::poll_next()</code></a> on <code>!</code><a href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin"><code>Unpin</code></a> types.</div></details><details class="toggle method-toggle" open><summary><section id="method.next" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#695-697">Source</a><a href="#method.next" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.next" class="fn">next</a>(&mut self) -> <a class="struct" href="../futures_lite/stream/struct.NextFuture.html" title="struct futures_lite::stream::NextFuture">NextFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Retrieves the next item in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.next">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_next" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#723-725">Source</a><a href="#method.try_next" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.try_next" class="fn">try_next</a><T, E>(&mut self) -> <a class="struct" href="../futures_lite/stream/struct.TryNextFuture.html" title="struct futures_lite::stream::TryNextFuture">TryNextFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, E>> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Retrieves the next item in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.try_next">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#745-747">Source</a><a href="#method.count" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.count" class="fn">count</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.CountFuture.html" title="struct futures_lite::stream::CountFuture">CountFuture</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Counts the number of items in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#772-775">Source</a><a href="#method.map" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.map" class="fn">map</a><T, F>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.Map.html" title="struct futures_lite::stream::Map">Map</a><Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> T,</div></h4></section></summary><div class='docblock'>Maps items of the stream to new values using a closure. <a href="../futures_lite/stream/trait.StreamExt.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#798-802">Source</a><a href="#method.flat_map" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.flat_map" class="fn">flat_map</a><U, F>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.FlatMap.html" title="struct futures_lite::stream::FlatMap">FlatMap</a><Self, U, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
U: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> U,</div></h4></section></summary><div class='docblock'>Maps items to streams and then concatenates them. <a href="../futures_lite/stream/trait.StreamExt.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#826-829">Source</a><a href="#method.flatten" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.Flatten.html" title="struct futures_lite::stream::Flatten">Flatten</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>,</div></h4></section></summary><div class='docblock'>Concatenates inner streams. <a href="../futures_lite/stream/trait.StreamExt.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.then" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#856-860">Source</a><a href="#method.then" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.then" class="fn">then</a><F, Fut>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.Then.html" title="struct futures_lite::stream::Then">Then</a><Self, F, Fut><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> Fut,
|
|
Fut: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/future/future/trait.Future.html" title="trait core::future::future::Future">Future</a>,</div></h4></section></summary><div class='docblock'>Maps items of the stream to new values using an async closure. <a href="../futures_lite/stream/trait.StreamExt.html#method.then">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#885-888">Source</a><a href="#method.filter" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.filter" class="fn">filter</a><P>(self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.Filter.html" title="struct futures_lite::stream::Filter">Filter</a><Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Keeps items of the stream for which <code>predicate</code> returns <code>true</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#913-916">Source</a><a href="#method.filter_map" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.filter_map" class="fn">filter_map</a><T, F>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.FilterMap.html" title="struct futures_lite::stream::FilterMap">FilterMap</a><Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>,</div></h4></section></summary><div class='docblock'>Filters and maps items of the stream using a closure. <a href="../futures_lite/stream/trait.StreamExt.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#936-938">Source</a><a href="#method.take" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../futures_lite/stream/struct.Take.html" title="struct futures_lite::stream::Take">Take</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Takes only the first <code>n</code> items of the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_while" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#959-962">Source</a><a href="#method.take_while" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.take_while" class="fn">take_while</a><P>(self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.TakeWhile.html" title="struct futures_lite::stream::TakeWhile">TakeWhile</a><Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Takes items while <code>predicate</code> returns <code>true</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.take_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#985-987">Source</a><a href="#method.skip" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../futures_lite/stream/struct.Skip.html" title="struct futures_lite::stream::Skip">Skip</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Skips the first <code>n</code> items of the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_while" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1008-1011">Source</a><a href="#method.skip_while" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.skip_while" class="fn">skip_while</a><P>(self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.SkipWhile.html" title="struct futures_lite::stream::SkipWhile">SkipWhile</a><Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Skips items while <code>predicate</code> returns <code>true</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.skip_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1040-1042">Source</a><a href="#method.step_by" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../futures_lite/stream/struct.StepBy.html" title="struct futures_lite::stream::StepBy">StepBy</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Yields every <code>step</code>th item. <a href="../futures_lite/stream/trait.StreamExt.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1071-1074">Source</a><a href="#method.chain" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.chain" class="fn">chain</a><U>(self, other: U) -> <a class="struct" href="../futures_lite/stream/struct.Chain.html" title="struct futures_lite::stream::Chain">Chain</a><Self, U><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
U: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Appends another stream to the end of this one. <a href="../futures_lite/stream/trait.StreamExt.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1098-1101">Source</a><a href="#method.cloned" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="../futures_lite/stream/struct.Cloned.html" title="struct futures_lite::stream::Cloned">Cloned</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&'a T</a>>,
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + 'a,</div></h4></section></summary><div class='docblock'>Clones all items. <a href="../futures_lite/stream/trait.StreamExt.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1122-1125">Source</a><a href="#method.copied" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="../futures_lite/stream/struct.Copied.html" title="struct futures_lite::stream::Copied">Copied</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&'a T</a>>,
|
|
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + 'a,</div></h4></section></summary><div class='docblock'>Copies all items. <a href="../futures_lite/stream/trait.StreamExt.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1144-1147">Source</a><a href="#method.collect" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.collect" class="fn">collect</a><C>(self) -> <a class="struct" href="../futures_lite/stream/struct.CollectFuture.html" title="struct futures_lite::stream::CollectFuture">CollectFuture</a><Self, C><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
C: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Collects all items in the stream into a collection. <a href="../futures_lite/stream/trait.StreamExt.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_collect" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1170-1173">Source</a><a href="#method.try_collect" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.try_collect" class="fn">try_collect</a><T, E, C>(self) -> <a class="struct" href="../futures_lite/stream/struct.TryCollectFuture.html" title="struct futures_lite::stream::TryCollectFuture">TryCollectFuture</a><Self, C><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, E>>,
|
|
C: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><T>,</div></h4></section></summary><div class='docblock'>Collects all items in the fallible stream into a collection. <a href="../futures_lite/stream/trait.StreamExt.html#method.try_collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1197-1201">Source</a><a href="#method.partition" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.partition" class="fn">partition</a><B, P>(self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.PartitionFuture.html" title="struct futures_lite::stream::PartitionFuture">PartitionFuture</a><Self, P, B><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
B: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Partitions items into those for which <code>predicate</code> is <code>true</code> and those for which it is
|
|
<code>false</code>, and then collects them into two collections. <a href="../futures_lite/stream/trait.StreamExt.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1227-1230">Source</a><a href="#method.fold" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.fold" class="fn">fold</a><T, F>(self, init: T, f: F) -> <a class="struct" href="../futures_lite/stream/struct.FoldFuture.html" title="struct futures_lite::stream::FoldFuture">FoldFuture</a><Self, F, T><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(T, Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> T,</div></h4></section></summary><div class='docblock'>Accumulates a computation over the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1265-1268">Source</a><a href="#method.try_fold" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.try_fold" class="fn">try_fold</a><T, E, F, B>(
|
|
&mut self,
|
|
init: B,
|
|
f: F,
|
|
) -> <a class="struct" href="../futures_lite/stream/struct.TryFoldFuture.html" title="struct futures_lite::stream::TryFoldFuture">TryFoldFuture</a><'_, Self, F, B><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, E>> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(B, T) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><B, E>,</div></h4></section></summary><div class='docblock'>Accumulates a fallible computation over the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.scan" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1300-1303">Source</a><a href="#method.scan" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.scan" class="fn">scan</a><St, B, F>(self, initial_state: St, f: F) -> <a class="struct" href="../futures_lite/stream/struct.Scan.html" title="struct futures_lite::stream::Scan">Scan</a><Self, St, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut St</a>, Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><B>,</div></h4></section></summary><div class='docblock'>Maps items of the stream to new values using a state value and a closure. <a href="../futures_lite/stream/trait.StreamExt.html#method.scan">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fuse" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1326-1328">Source</a><a href="#method.fuse" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.fuse" class="fn">fuse</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.Fuse.html" title="struct futures_lite::stream::Fuse">Fuse</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Fuses the stream so that it stops yielding items after the first <a href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html#variant.None" title="variant core::option::Option::None"><code>None</code></a>. <a href="../futures_lite/stream/trait.StreamExt.html#method.fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cycle" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1352-1354">Source</a><a href="#method.cycle" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.cycle" class="fn">cycle</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.Cycle.html" title="struct futures_lite::stream::Cycle">Cycle</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Repeats the stream from beginning to end, forever. <a href="../futures_lite/stream/trait.StreamExt.html#method.cycle">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1379-1381">Source</a><a href="#method.enumerate" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.Enumerate.html" title="struct futures_lite::stream::Enumerate">Enumerate</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Enumerates items, mapping them to <code>(index, item)</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1404-1407">Source</a><a href="#method.inspect" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.inspect" class="fn">inspect</a><F>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.Inspect.html" title="struct futures_lite::stream::Inspect">Inspect</a><Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>),</div></h4></section></summary><div class='docblock'>Calls a closure on each item and passes it on. <a href="../futures_lite/stream/trait.StreamExt.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.nth" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1429-1431">Source</a><a href="#method.nth" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.nth" class="fn">nth</a>(&mut self, n: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../futures_lite/stream/struct.NthFuture.html" title="struct futures_lite::stream::NthFuture">NthFuture</a><'_, Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h4></section></summary><div class='docblock'>Gets the <code>n</code>th item of the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.nth">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.last" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1451-1453">Source</a><a href="#method.last" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.last" class="fn">last</a>(self) -> <a class="struct" href="../futures_lite/stream/struct.LastFuture.html" title="struct futures_lite::stream::LastFuture">LastFuture</a><Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Returns the last item in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1475-1478">Source</a><a href="#method.find" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.find" class="fn">find</a><P>(&mut self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.FindFuture.html" title="struct futures_lite::stream::FindFuture">FindFuture</a><'_, Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Finds the first item of the stream for which <code>predicate</code> returns <code>true</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.find">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1500-1503">Source</a><a href="#method.find_map" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.find_map" class="fn">find_map</a><F, B>(&mut self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.FindMapFuture.html" title="struct futures_lite::stream::FindMapFuture">FindMapFuture</a><'_, Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><B>,</div></h4></section></summary><div class='docblock'>Applies a closure to items in the stream and returns the first <a href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html#variant.Some" title="variant core::option::Option::Some"><code>Some</code></a> result. <a href="../futures_lite/stream/trait.StreamExt.html#method.find_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1523-1526">Source</a><a href="#method.position" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.position" class="fn">position</a><P>(&mut self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.PositionFuture.html" title="struct futures_lite::stream::PositionFuture">PositionFuture</a><'_, Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Finds the index of the first item of the stream for which <code>predicate</code> returns <code>true</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.position">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1555-1558">Source</a><a href="#method.all" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.all" class="fn">all</a><P>(&mut self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.AllFuture.html" title="struct futures_lite::stream::AllFuture">AllFuture</a><'_, Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Tests if <code>predicate</code> returns <code>true</code> for all items in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1586-1589">Source</a><a href="#method.any" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.any" class="fn">any</a><P>(&mut self, predicate: P) -> <a class="struct" href="../futures_lite/stream/struct.AnyFuture.html" title="struct futures_lite::stream::AnyFuture">AnyFuture</a><'_, Self, P><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
P: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Tests if <code>predicate</code> returns <code>true</code> for any item in the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1609-1612">Source</a><a href="#method.for_each" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.for_each" class="fn">for_each</a><F>(self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.ForEachFuture.html" title="struct futures_lite::stream::ForEachFuture">ForEachFuture</a><Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>),</div></h4></section></summary><div class='docblock'>Calls a closure on each item of the stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1643-1646">Source</a><a href="#method.try_for_each" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.try_for_each" class="fn">try_for_each</a><F, E>(&mut self, f: F) -> <a class="struct" href="../futures_lite/stream/struct.TryForEachFuture.html" title="struct futures_lite::stream::TryForEachFuture">TryForEachFuture</a><'_, Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
|
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.unit.html">()</a>, E>,</div></h4></section></summary><div class='docblock'>Calls a fallible closure on each item of the stream, stopping on first error. <a href="../futures_lite/stream/trait.StreamExt.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1671-1674">Source</a><a href="#method.zip" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.zip" class="fn">zip</a><U>(self, other: U) -> <a class="struct" href="../futures_lite/stream/struct.Zip.html" title="struct futures_lite::stream::Zip">Zip</a><Self, U><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
U: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>,</div></h4></section></summary><div class='docblock'>Zips up two streams into a single stream of pairs. <a href="../futures_lite/stream/trait.StreamExt.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1698-1702">Source</a><a href="#method.unzip" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="struct" href="../futures_lite/stream/struct.UnzipFuture.html" title="struct futures_lite::stream::UnzipFuture">UnzipFuture</a><Self, FromA, FromB><div class="where">where
|
|
FromA: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><A>,
|
|
FromB: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><B>,
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.tuple.html">(A, B)</a>>,</div></h4></section></summary><div class='docblock'>Collects a stream of pairs into a pair of collections. <a href="../futures_lite/stream/trait.StreamExt.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.or" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1726-1729">Source</a><a href="#method.or" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.or" class="fn">or</a><S>(self, other: S) -> <a class="struct" href="../futures_lite/stream/struct.Or.html" title="struct futures_lite::stream::Or">Or</a><Self, S><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
S: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Merges with <code>other</code> stream, preferring items from <code>self</code> whenever both streams are ready. <a href="../futures_lite/stream/trait.StreamExt.html#method.or">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.race" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1754-1757">Source</a><a href="#method.race" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.race" class="fn">race</a><S>(self, other: S) -> <a class="struct" href="../futures_lite/stream/struct.Race.html" title="struct futures_lite::stream::Race">Race</a><Self, S><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
S: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Merges with <code>other</code> stream, with no preference for either stream when both are ready. <a href="../futures_lite/stream/trait.StreamExt.html#method.race">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.drain" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1813">Source</a><a href="#method.drain" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.drain" class="fn">drain</a>(&mut self) -> <a class="struct" href="../futures_lite/stream/struct.Drain.html" title="struct futures_lite::stream::Drain">Drain</a><'_, Self></h4></section></summary><div class='docblock'>Yields all immediately available values from a stream. <a href="../futures_lite/stream/trait.StreamExt.html#method.drain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.boxed" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1834-1836">Source</a><a href="#method.boxed" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.boxed" class="fn">boxed</a><'a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><<a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'a,</div></h4></section></summary><div class='docblock'>Boxes the stream and changes its type to <code>dyn Stream + Send + 'a</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.boxed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.boxed_local" class="method trait-impl"><a class="src rightside" href="../src/futures_lite/stream.rs.html#1858-1860">Source</a><a href="#method.boxed_local" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_lite/stream/trait.StreamExt.html#method.boxed_local" class="fn">boxed_local</a><'a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><<a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = Self::<a class="associatedtype" href="../futures_core/stream/trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>> + 'a>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + 'a,</div></h4></section></summary><div class='docblock'>Boxes the stream and changes its type to <code>dyn Stream + 'a</code>. <a href="../futures_lite/stream/trait.StreamExt.html#method.boxed_local">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#805-807">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#809">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#812">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#790-792">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#794">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#797">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryStream-for-S" class="impl"><a class="src rightside" href="../src/futures_core/stream.rs.html#195-197">Source</a><a href="#impl-TryStream-for-S" class="anchor">§</a><h3 class="code-header">impl<S, T, E> <a class="trait" href="../futures_core/stream/trait.TryStream.html" title="trait futures_core::stream::TryStream">TryStream</a> for S<div class="where">where
|
|
S: <a class="trait" href="../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, E>> + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Ok" class="associatedtype trait-impl"><a class="src rightside" href="../src/futures_core/stream.rs.html#199">Source</a><a href="#associatedtype.Ok" class="anchor">§</a><h4 class="code-header">type <a href="../futures_core/stream/trait.TryStream.html#associatedtype.Ok" class="associatedtype">Ok</a> = T</h4></section></summary><div class='docblock'>The type of successful values yielded by this future</div></details><details class="toggle" open><summary><section id="associatedtype.Error-2" class="associatedtype trait-impl"><a class="src rightside" href="../src/futures_core/stream.rs.html#200">Source</a><a href="#associatedtype.Error-2" class="anchor">§</a><h4 class="code-header">type <a href="../futures_core/stream/trait.TryStream.html#associatedtype.Error" class="associatedtype">Error</a> = E</h4></section></summary><div class='docblock'>The type of failures yielded by this future</div></details><details class="toggle method-toggle" open><summary><section id="method.try_poll_next" class="method trait-impl"><a class="src rightside" href="../src/futures_core/stream.rs.html#202-205">Source</a><a href="#method.try_poll_next" class="anchor">§</a><h4 class="code-header">fn <a href="../futures_core/stream/trait.TryStream.html#tymethod.try_poll_next" class="fn">try_poll_next</a>(
|
|
self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut S</a>>,
|
|
cx: &mut <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<S as <a class="trait" href="../futures_core/stream/trait.TryStream.html" title="trait futures_core::stream::TryStream">TryStream</a>>::<a class="associatedtype" href="../futures_core/stream/trait.TryStream.html#associatedtype.Ok" title="type futures_core::stream::TryStream::Ok">Ok</a>, <S as <a class="trait" href="../futures_core/stream/trait.TryStream.html" title="trait futures_core::stream::TryStream">TryStream</a>>::<a class="associatedtype" href="../futures_core/stream/trait.TryStream.html#associatedtype.Error" title="type futures_core::stream::TryStream::Error">Error</a>>>></h4></section></summary><div class='docblock'>Poll this <code>TryStream</code> as if it were a <code>Stream</code>. <a href="../futures_core/stream/trait.TryStream.html#tymethod.try_poll_next">Read more</a></div></details></div></details></div></section></div></main></body></html> |