blob: f9c65667cc973e8d072511f09864b12f6a572f4a [file] [log] [blame]
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="An unbounded set of streams"><meta name="keywords" content="rust, rustlang, rust-lang, SelectAll"><title>SelectAll in futures_util::stream - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../../normalize.css"><link rel="stylesheet" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../../ayu.css" disabled><link rel="stylesheet" href="../../dark.css" disabled><link rel="stylesheet" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../main.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc 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">&#9776;</button><a class="sidebar-logo" href="../../futures_util/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../../futures_util/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">SelectAll</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.clear">clear</a></li><li><a href="#method.is_empty">is_empty</a></li><li><a href="#method.iter">iter</a></li><li><a href="#method.iter_mut">iter_mut</a></li><li><a href="#method.len">len</a></li><li><a href="#method.new">new</a></li><li><a href="#method.push">push</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Debug-for-SelectAll%3CSt%3E">Debug</a></li><li><a href="#impl-Default-for-SelectAll%3CSt%3E">Default</a></li><li><a href="#impl-Extend%3CSt%3E-for-SelectAll%3CSt%3E">Extend&lt;St&gt;</a></li><li><a href="#impl-FromIterator%3CSt%3E-for-SelectAll%3CSt%3E">FromIterator&lt;St&gt;</a></li><li><a href="#impl-FusedStream-for-SelectAll%3CSt%3E">FusedStream</a></li><li><a href="#impl-IntoIterator-for-%26%27a%20SelectAll%3CSt%3E">IntoIterator</a></li><li><a href="#impl-IntoIterator-for-%26%27a%20mut%20SelectAll%3CSt%3E">IntoIterator</a></li><li><a href="#impl-IntoIterator-for-SelectAll%3CSt%3E">IntoIterator</a></li><li><a href="#impl-Stream-for-SelectAll%3CSt%3E">Stream</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-SelectAll%3CSt%3E">!RefUnwindSafe</a></li><li><a href="#impl-Send-for-SelectAll%3CSt%3E">Send</a></li><li><a href="#impl-Sync-for-SelectAll%3CSt%3E">Sync</a></li><li><a href="#impl-Unpin-for-SelectAll%3CSt%3E">Unpin</a></li><li><a href="#impl-UnwindSafe-for-SelectAll%3CSt%3E">!UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-SelectAll%3CSt%3E">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-SelectAll%3CSt%3E">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-SelectAll%3CSt%3E">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-SelectAll%3CSt%3E">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-SelectAll%3CSt%3E">Into&lt;U&gt;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-SelectAll%3CSt%3E">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-SelectAll%3CSt%3E">TryInto&lt;U&gt;</a></li><li><a href="#impl-TryStream-for-SelectAll%3CSt%3E">TryStream</a></li></ul></section><h2><a href="index.html">In futures_util::stream</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn">Struct <a href="../index.html">futures_util</a>::<wbr><a href="index.html">stream</a>::<wbr><a class="struct" href="#">SelectAll</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../../src/futures_util/stream/select_all.rs.html#27-29">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="item-decl"><pre class="rust struct"><code>pub struct SelectAll&lt;St&gt; { /* private fields */ }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An unbounded set of streams</p>
<p>This “combinator” provides the ability to maintain a set of streams
and drive them all to completion.</p>
<p>Streams are pushed into this set and their realized values are
yielded as they become ready. Streams will only be polled when they
generate notifications. This allows to coordinate a large number of streams.</p>
<p>Note that you can create a ready-made <code>SelectAll</code> via the
<code>select_all</code> function in the <code>stream</code> module, or you can start with an
empty set with the <code>SelectAll::new</code> constructor.</p>
</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#37-82">source</a><a href="#impl-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.new" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#42-44">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a>() -&gt; Self</h4></section></summary><div class="docblock"><p>Constructs a new, empty <code>SelectAll</code></p>
<p>The returned <code>SelectAll</code> does not contain any streams and, in this
state, <code>SelectAll::poll</code> will return <code>Poll::Ready(None)</code>.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.len" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#49-51">source</a><h4 class="code-header">pub fn <a href="#method.len" class="fnname">len</a>(&amp;self) -&gt; usize</h4></section></summary><div class="docblock"><p>Returns the number of streams contained in the set.</p>
<p>This represents the total number of in-flight streams.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_empty" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#54-56">source</a><h4 class="code-header">pub fn <a href="#method.is_empty" class="fnname">is_empty</a>(&amp;self) -&gt; bool</h4></section></summary><div class="docblock"><p>Returns <code>true</code> if the set contains no streams</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.push" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#64-66">source</a><h4 class="code-header">pub fn <a href="#method.push" class="fnname">push</a>(&amp;mut self, stream: St)</h4></section></summary><div class="docblock"><p>Push a stream into the set.</p>
<p>This function submits the given stream to the set for managing. This
function will not call <code>poll</code> on the submitted stream. The caller must
ensure that <code>SelectAll::poll</code> is called in order to receive task
notifications.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.iter" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#69-71">source</a><h4 class="code-header">pub fn <a href="#method.iter" class="fnname">iter</a>(&amp;self) -&gt; <a class="struct" href="select_all/struct.Iter.html" title="struct futures_util::stream::select_all::Iter">Iter</a>&lt;'_, St&gt;<span class="notable-traits"><span class="notable-traits-tooltip"><span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for <a class="struct" href="select_all/struct.Iter.html" title="struct futures_util::stream::select_all::Iter">Iter</a>&lt;'a, St&gt;</span><code class="content"><span class="where fmt-newline">impl&lt;'a, St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; Iterator for <a class="struct" href="select_all/struct.Iter.html" title="struct futures_util::stream::select_all::Iter">Iter</a>&lt;'a, St&gt;</span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = &amp;'a St;</span></code></span></span></span></span></h4></section></summary><div class="docblock"><p>Returns an iterator that allows inspecting each stream in the set.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.iter_mut" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#74-76">source</a><h4 class="code-header">pub fn <a href="#method.iter_mut" class="fnname">iter_mut</a>(&amp;mut self) -&gt; <a class="struct" href="select_all/struct.IterMut.html" title="struct futures_util::stream::select_all::IterMut">IterMut</a>&lt;'_, St&gt;<span class="notable-traits"><span class="notable-traits-tooltip"><span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for <a class="struct" href="select_all/struct.IterMut.html" title="struct futures_util::stream::select_all::IterMut">IterMut</a>&lt;'a, St&gt;</span><code class="content"><span class="where fmt-newline">impl&lt;'a, St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; Iterator for <a class="struct" href="select_all/struct.IterMut.html" title="struct futures_util::stream::select_all::IterMut">IterMut</a>&lt;'a, St&gt;</span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = &amp;'a mut St;</span></code></span></span></span></span></h4></section></summary><div class="docblock"><p>Returns an iterator that allows modifying each stream in the set.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clear" class="method has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#79-81">source</a><h4 class="code-header">pub fn <a href="#method.clear" class="fnname">clear</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>Clears the set, removing all streams.</p>
</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Debug-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#31-35">source</a><a href="#impl-Debug-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;Debug&gt; Debug for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#32-34">source</a><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a class="fnname">fmt</a>(&amp;self, f: &amp;mut Formatter&lt;'_&gt;) -&gt; Result</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Default-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#84-88">source</a><a href="#impl-Default-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; Default for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.default" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#85-87">source</a><a href="#method.default" class="anchor"></a><h4 class="code-header">fn <a class="fnname">default</a>() -&gt; Self</h4></section></summary><div class='docblock'>Returns the “default value” for a type. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Extend%3CSt%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#150-156">source</a><a href="#impl-Extend%3CSt%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; Extend&lt;St&gt; for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.extend" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#151-155">source</a><a href="#method.extend" class="anchor"></a><h4 class="code-header">fn <a class="fnname">extend</a>&lt;T:&nbsp;IntoIterator&lt;Item = St&gt;&gt;(&amp;mut self, iter: T)</h4></section></summary><div class='docblock'>Extends a collection with the contents of an iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.extend_one" class="method trait-impl has-srclink"><a href="#method.extend_one" class="anchor"></a><h4 class="code-header">fn <a class="fnname">extend_one</a>(&amp;mut self, item: A)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>extend_one</code>)</span></div></span><div class='docblock'>Extends a collection with exactly one element.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.extend_reserve" class="method trait-impl has-srclink"><a href="#method.extend_reserve" class="anchor"></a><h4 class="code-header">fn <a class="fnname">extend_reserve</a>(&amp;mut self, additional: usize)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>extend_one</code>)</span></div></span><div class='docblock'>Reserves capacity in a collection for the given number of additional elements. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-FromIterator%3CSt%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#144-148">source</a><a href="#impl-FromIterator%3CSt%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; FromIterator&lt;St&gt; for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from_iter" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#145-147">source</a><a href="#method.from_iter" class="anchor"></a><h4 class="code-header">fn <a class="fnname">from_iter</a>&lt;T:&nbsp;IntoIterator&lt;Item = St&gt;&gt;(iter: T) -&gt; Self</h4></section></summary><div class='docblock'>Creates a value from an iterator. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-FusedStream-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#112-116">source</a><a href="#impl-FusedStream-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; <a class="trait" href="trait.FusedStream.html" title="trait futures_util::stream::FusedStream">FusedStream</a> for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_terminated" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#113-115">source</a><a href="#method.is_terminated" class="anchor"></a><h4 class="code-header">fn <a href="trait.FusedStream.html#tymethod.is_terminated" class="fnname">is_terminated</a>(&amp;self) -&gt; bool</h4></section></summary><div class='docblock'>Returns <code>true</code> if the stream should no longer be polled.</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-%26%27a%20SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#167-174">source</a><a href="#impl-IntoIterator-for-%26%27a%20SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;'a, St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; IntoIterator for &amp;'a <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Item-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item-2" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Item</a> = &amp;'a St</h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.IntoIter-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.IntoIter-1" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">IntoIter</a> = <a class="struct" href="select_all/struct.Iter.html" title="struct futures_util::stream::select_all::Iter">Iter</a>&lt;'a, St&gt;</h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into_iter-1" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#171-173">source</a><a href="#method.into_iter-1" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into_iter</a>(self) -&gt; Self::IntoIter</h4></section></summary><div class='docblock'>Creates an iterator from a value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-%26%27a%20mut%20SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#176-183">source</a><a href="#impl-IntoIterator-for-%26%27a%20mut%20SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;'a, St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; IntoIterator for &amp;'a mut <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Item-3" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item-3" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Item</a> = &amp;'a mut St</h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.IntoIter-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.IntoIter-2" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">IntoIter</a> = <a class="struct" href="select_all/struct.IterMut.html" title="struct futures_util::stream::select_all::IterMut">IterMut</a>&lt;'a, St&gt;</h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into_iter-2" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#180-182">source</a><a href="#method.into_iter-2" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into_iter</a>(self) -&gt; Self::IntoIter</h4></section></summary><div class='docblock'>Creates an iterator from a value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-IntoIterator-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#158-165">source</a><a href="#impl-IntoIterator-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; IntoIterator for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item-1" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Item</a> = St</h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.IntoIter" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.IntoIter" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">IntoIter</a> = <a class="struct" href="select_all/struct.IntoIter.html" title="struct futures_util::stream::select_all::IntoIter">IntoIter</a>&lt;St&gt;</h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into_iter" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#162-164">source</a><a href="#method.into_iter" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into_iter</a>(self) -&gt; Self::IntoIter</h4></section></summary><div class='docblock'>Creates an iterator from a value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Stream-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#90-110">source</a><a href="#impl-Stream-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St:&nbsp;<a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> + Unpin&gt; <a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a> for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item" class="anchor"></a><h4 class="code-header">type <a href="trait.Stream.html#associatedtype.Item" class="associatedtype">Item</a> = &lt;St as <a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a>&gt;::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_util::stream::Stream::Item">Item</a></h4></section></summary><div class='docblock'>Values yielded by the stream.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.poll_next" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_util/stream/select_all.rs.html#93-109">source</a><a href="#method.poll_next" class="anchor"></a><h4 class="code-header">fn <a href="trait.Stream.html#tymethod.poll_next" class="fnname">poll_next</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;self: Pin&lt;&amp;mut Self&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;cx: &amp;mut Context&lt;'_&gt;<br>) -&gt; Poll&lt;Option&lt;Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_util::stream::Stream::Item">Item</a>&gt;&gt;</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="trait.Stream.html#tymethod.poll_next">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.size_hint" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_core/stream.rs.html#95">source</a><a href="#method.size_hint" class="anchor"></a><h4 class="code-header">fn <a href="trait.Stream.html#method.size_hint" class="fnname">size_hint</a>(&amp;self) -&gt; (usize, Option&lt;usize&gt;)</h4></section></summary><div class='docblock'>Returns the bounds on the remaining length of the stream. <a href="trait.Stream.html#method.size_hint">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St&gt; !RefUnwindSafe for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section><section id="impl-Send-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Send-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St&gt; Send for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;St: Send,</span></h3></section><section id="impl-Sync-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Sync-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St&gt; Sync for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;St: Sync,</span></h3></section><section id="impl-Unpin-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Unpin-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St&gt; Unpin for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section><section id="impl-UnwindSafe-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-UnwindSafe-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;St&gt; !UnwindSafe for <a class="struct" href="struct.SelectAll.html" title="struct futures_util::stream::SelectAll">SelectAll</a>&lt;St&gt;</h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Any-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Any-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; Any for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><a href="#method.type_id" class="anchor"></a><h4 class="code-header">fn <a class="fnname">type_id</a>(&amp;self) -&gt; TypeId</h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Borrow%3CT%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; Borrow&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span><a href="#method.borrow" class="anchor"></a><h4 class="code-header">fn <a class="fnname">borrow</a>(&amp;self) -&gt; &amp;T</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-BorrowMut%3CT%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; BorrowMut&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">fn <a class="fnname">borrow_mut</a>(&amp;mut self) -&gt; &amp;mut T</h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-From%3CT%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; From&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a class="fnname">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-Into%3CU%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; Into&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: From&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into</a>(self) -&gt; 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>[From]&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-TryFrom%3CU%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; TryFrom&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: Into&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Error</a> = Infallible</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.try_from" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_from</a>(value: U) -&gt; Result&lt;T, &lt;T as TryFrom&lt;U&gt;&gt;::Error&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-SelectAll%3CSt%3E" class="impl has-srclink"><a href="#impl-TryInto%3CU%3E-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; TryInto&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: TryFrom&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Error</a> = &lt;U as TryFrom&lt;T&gt;&gt;::Error</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.try_into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_into</a>(self) -&gt; Result&lt;U, &lt;U as TryFrom&lt;T&gt;&gt;::Error&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryStream-for-SelectAll%3CSt%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/futures_core/stream.rs.html#185">source</a><a href="#impl-TryStream-for-SelectAll%3CSt%3E" class="anchor"></a><h3 class="code-header">impl&lt;S, T, E&gt; <a class="trait" href="trait.TryStream.html" title="trait futures_util::stream::TryStream">TryStream</a> for S<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;S: <a class="trait" href="trait.Stream.html" title="trait futures_util::stream::Stream">Stream</a>&lt;Item = Result&lt;T, E&gt;&gt; + ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Ok" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Ok" class="anchor"></a><h4 class="code-header">type <a href="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="rustdoc-toggle" open><summary><section id="associatedtype.Error-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-2" class="anchor"></a><h4 class="code-header">type <a href="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="rustdoc-toggle method-toggle" open><summary><section id="method.try_poll_next" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/futures_core/stream.rs.html#192-195">source</a><a href="#method.try_poll_next" class="anchor"></a><h4 class="code-header">fn <a href="trait.TryStream.html#tymethod.try_poll_next" class="fnname">try_poll_next</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;self: Pin&lt;&amp;mut S&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;cx: &amp;mut Context&lt;'_&gt;<br>) -&gt; Poll&lt;Option&lt;Result&lt;&lt;S as <a class="trait" href="trait.TryStream.html" title="trait futures_util::stream::TryStream">TryStream</a>&gt;::<a class="associatedtype" href="trait.TryStream.html#associatedtype.Ok" title="type futures_util::stream::TryStream::Ok">Ok</a>, &lt;S as <a class="trait" href="trait.TryStream.html" title="trait futures_util::stream::TryStream">TryStream</a>&gt;::<a class="associatedtype" href="trait.TryStream.html#associatedtype.Error" title="type futures_util::stream::TryStream::Error">Error</a>&gt;&gt;&gt;</h4></section></summary><div class='docblock'>Poll this <code>TryStream</code> as if it were a <code>Stream</code>. <a href="trait.TryStream.html#tymethod.try_poll_next">Read more</a></div></details></div></details></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="futures_util" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>