blob: 3c810c538cb4e0bf6cd8323bfd15d7e0b8784547 [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="Asynchronous streams."><meta name="keywords" content="rust, rustlang, rust-lang, stream"><title>futures::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="../../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 mod"><!--[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/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/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">Module stream</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li><li><a href="#functions">Functions</a></li><li><a href="#types">Type Definitions</a></li></ul></section></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">Module <a href="../index.html">futures</a>::<wbr><a class="mod" href="#">stream</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/lib.rs.html#298">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Asynchronous streams.</p>
<p>This module contains:</p>
<ul>
<li>The <a href="trait.Stream.html" title="Stream"><code>Stream</code></a> trait, for objects that can asynchronously produce a
sequence of values.</li>
<li>The <a href="trait.StreamExt.html" title="StreamExt"><code>StreamExt</code></a> and <a href="trait.TryStreamExt.html" title="TryStreamExt"><code>TryStreamExt</code></a> trait, which provides adapters for
chaining and composing streams.</li>
<li>Top-level stream constructors like <a href="fn.iter.html"><code>iter</code></a> which creates a
stream from an iterator.</li>
</ul>
</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="mod" href="futures_unordered/index.html" title="futures::stream::futures_unordered mod">futures_unordered</a></div><div class="item-right docblock-short">An unbounded set of futures.</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="select_all/index.html" title="futures::stream::select_all mod">select_all</a></div><div class="item-right docblock-short">An unbounded set of streams</div></div></div><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.AbortHandle.html" title="futures::stream::AbortHandle struct">AbortHandle</a></div><div class="item-right docblock-short">A handle to an <code>Abortable</code> task.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.AbortRegistration.html" title="futures::stream::AbortRegistration struct">AbortRegistration</a></div><div class="item-right docblock-short">A registration handle for an <code>Abortable</code> task.
Values of this type can be acquired from <code>AbortHandle::new</code> and are used
in calls to <code>Abortable::new</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Abortable.html" title="futures::stream::Abortable struct">Abortable</a></div><div class="item-right docblock-short">A future/stream which can be remotely short-circuited using an <code>AbortHandle</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Aborted.html" title="futures::stream::Aborted struct">Aborted</a></div><div class="item-right docblock-short">Indicator that the <code>Abortable</code> task was aborted.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.All.html" title="futures::stream::All struct">All</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.all"><code>all</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.AndThen.html" title="futures::stream::AndThen struct">AndThen</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.and_then"><code>and_then</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Any.html" title="futures::stream::Any struct">Any</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.any"><code>any</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.BufferUnordered.html" title="futures::stream::BufferUnordered struct">BufferUnordered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.buffer_unordered"><code>buffer_unordered</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Buffered.html" title="futures::stream::Buffered struct">Buffered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.buffered"><code>buffered</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.CatchUnwind.html" title="futures::stream::CatchUnwind struct">CatchUnwind</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.catch_unwind"><code>catch_unwind</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Chain.html" title="futures::stream::Chain struct">Chain</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.chain"><code>chain</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Chunks.html" title="futures::stream::Chunks struct">Chunks</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.chunks"><code>chunks</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Collect.html" title="futures::stream::Collect struct">Collect</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.collect"><code>collect</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Concat.html" title="futures::stream::Concat struct">Concat</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.concat"><code>concat</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Count.html" title="futures::stream::Count struct">Count</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.count"><code>count</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Cycle.html" title="futures::stream::Cycle struct">Cycle</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.cycle"><code>cycle</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Empty.html" title="futures::stream::Empty struct">Empty</a></div><div class="item-right docblock-short">Stream for the <a href="fn.empty.html" title="empty"><code>empty</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Enumerate.html" title="futures::stream::Enumerate struct">Enumerate</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.enumerate"><code>enumerate</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ErrInto.html" title="futures::stream::ErrInto struct">ErrInto</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.err_into"><code>err_into</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Filter.html" title="futures::stream::Filter struct">Filter</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.filter"><code>filter</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FilterMap.html" title="futures::stream::FilterMap struct">FilterMap</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.filter_map"><code>filter_map</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FlatMap.html" title="futures::stream::FlatMap struct">FlatMap</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.flat_map"><code>flat_map</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FlatMapUnordered.html" title="futures::stream::FlatMapUnordered struct">FlatMapUnordered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.flat_map_unordered"><code>flat_map_unordered</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Flatten.html" title="futures::stream::Flatten struct">Flatten</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.flatten"><code>flatten</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Fold.html" title="futures::stream::Fold struct">Fold</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.fold"><code>fold</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ForEach.html" title="futures::stream::ForEach struct">ForEach</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.for_each"><code>for_each</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ForEachConcurrent.html" title="futures::stream::ForEachConcurrent struct">ForEachConcurrent</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.for_each_concurrent"><code>for_each_concurrent</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Forward.html" title="futures::stream::Forward struct">Forward</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.forward"><code>forward</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Fuse.html" title="futures::stream::Fuse struct">Fuse</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.fuse"><code>fuse</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FuturesOrdered.html" title="futures::stream::FuturesOrdered struct">FuturesOrdered</a></div><div class="item-right docblock-short">An unbounded queue of futures.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FuturesUnordered.html" title="futures::stream::FuturesUnordered struct">FuturesUnordered</a></div><div class="item-right docblock-short">A set of futures which may complete in any order.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Inspect.html" title="futures::stream::Inspect struct">Inspect</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.inspect"><code>inspect</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.InspectErr.html" title="futures::stream::InspectErr struct">InspectErr</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.inspect_err"><code>inspect_err</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.InspectOk.html" title="futures::stream::InspectOk struct">InspectOk</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.inspect_ok"><code>inspect_ok</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.IntoAsyncRead.html" title="futures::stream::IntoAsyncRead struct">IntoAsyncRead</a></div><div class="item-right docblock-short">Reader for the <a href="trait.TryStreamExt.html#method.into_async_read"><code>into_async_read</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.IntoStream.html" title="futures::stream::IntoStream struct">IntoStream</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.into_stream"><code>into_stream</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Iter.html" title="futures::stream::Iter struct">Iter</a></div><div class="item-right docblock-short">Stream for the <a href="fn.iter.html" title="iter"><code>iter</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Map.html" title="futures::stream::Map struct">Map</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.map"><code>map</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.MapErr.html" title="futures::stream::MapErr struct">MapErr</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.map_err"><code>map_err</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.MapOk.html" title="futures::stream::MapOk struct">MapOk</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.map_ok"><code>map_ok</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Next.html" title="futures::stream::Next struct">Next</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.next"><code>next</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.NextIf.html" title="futures::stream::NextIf struct">NextIf</a></div><div class="item-right docblock-short">Future for the <a href="struct.Peekable.html#method.next_if"><code>Peekable::next_if</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.NextIfEq.html" title="futures::stream::NextIfEq struct">NextIfEq</a></div><div class="item-right docblock-short">Future for the <a href="struct.Peekable.html#method.next_if_eq"><code>Peekable::next_if_eq</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Once.html" title="futures::stream::Once struct">Once</a></div><div class="item-right docblock-short">A stream which emits single element and then EOF.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.OrElse.html" title="futures::stream::OrElse struct">OrElse</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.or_else"><code>or_else</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Peek.html" title="futures::stream::Peek struct">Peek</a></div><div class="item-right docblock-short">Future for the <a href="struct.Peekable.html#method.peek"><code>Peekable::peek</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.PeekMut.html" title="futures::stream::PeekMut struct">PeekMut</a></div><div class="item-right docblock-short">Future for the <a href="struct.Peekable.html#method.peek_mut"><code>Peekable::peek_mut</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Peekable.html" title="futures::stream::Peekable struct">Peekable</a></div><div class="item-right docblock-short">A <code>Stream</code> that implements a <code>peek</code> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Pending.html" title="futures::stream::Pending struct">Pending</a></div><div class="item-right docblock-short">Stream for the <a href="fn.pending.html" title="pending()"><code>pending()</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.PollFn.html" title="futures::stream::PollFn struct">PollFn</a></div><div class="item-right docblock-short">Stream for the <a href="fn.poll_fn.html" title="poll_fn"><code>poll_fn</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.PollImmediate.html" title="futures::stream::PollImmediate struct">PollImmediate</a></div><div class="item-right docblock-short">Stream for the <a href="fn.poll_immediate.html">poll_immediate</a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ReadyChunks.html" title="futures::stream::ReadyChunks struct">ReadyChunks</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.ready_chunks"><code>ready_chunks</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Repeat.html" title="futures::stream::Repeat struct">Repeat</a></div><div class="item-right docblock-short">Stream for the <a href="fn.repeat.html" title="repeat"><code>repeat</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.RepeatWith.html" title="futures::stream::RepeatWith struct">RepeatWith</a></div><div class="item-right docblock-short">An stream that repeats elements of type <code>A</code> endlessly by
applying the provided closure <code>F: FnMut() -&gt; A</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ReuniteError.html" title="futures::stream::ReuniteError struct">ReuniteError</a></div><div class="item-right docblock-short">Error indicating a <code>SplitSink&lt;S&gt;</code> and <code>SplitStream&lt;S&gt;</code> were not two halves
of a <code>Stream + Split</code>, and thus could not be <code>reunite</code>d.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Scan.html" title="futures::stream::Scan struct">Scan</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.scan"><code>scan</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Select.html" title="futures::stream::Select struct">Select</a></div><div class="item-right docblock-short">Stream for the <a href="fn.select.html" title="select()"><code>select()</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SelectAll.html" title="futures::stream::SelectAll struct">SelectAll</a></div><div class="item-right docblock-short">An unbounded set of streams</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SelectNextSome.html" title="futures::stream::SelectNextSome struct">SelectNextSome</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.select_next_some"><code>select_next_some</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SelectWithStrategy.html" title="futures::stream::SelectWithStrategy struct">SelectWithStrategy</a></div><div class="item-right docblock-short">Stream for the <a href="fn.select_with_strategy.html" title="select_with_strategy()"><code>select_with_strategy()</code></a> function. See function docs for details.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Skip.html" title="futures::stream::Skip struct">Skip</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.skip"><code>skip</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SkipWhile.html" title="futures::stream::SkipWhile struct">SkipWhile</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.skip_while"><code>skip_while</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SplitSink.html" title="futures::stream::SplitSink struct">SplitSink</a></div><div class="item-right docblock-short">A <code>Sink</code> part of the split pair</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.SplitStream.html" title="futures::stream::SplitStream struct">SplitStream</a></div><div class="item-right docblock-short">A <code>Stream</code> part of the split pair</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.StreamFuture.html" title="futures::stream::StreamFuture struct">StreamFuture</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.into_future"><code>into_future</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Take.html" title="futures::stream::Take struct">Take</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.take"><code>take</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TakeUntil.html" title="futures::stream::TakeUntil struct">TakeUntil</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.take_until"><code>take_until</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TakeWhile.html" title="futures::stream::TakeWhile struct">TakeWhile</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.take_while"><code>take_while</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Then.html" title="futures::stream::Then struct">Then</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.then"><code>then</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryBufferUnordered.html" title="futures::stream::TryBufferUnordered struct">TryBufferUnordered</a></div><div class="item-right docblock-short">Stream for the
<a href="trait.TryStreamExt.html#method.try_buffer_unordered"><code>try_buffer_unordered</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryBuffered.html" title="futures::stream::TryBuffered struct">TryBuffered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_buffered"><code>try_buffered</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryChunks.html" title="futures::stream::TryChunks struct">TryChunks</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_chunks"><code>try_chunks</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryChunksError.html" title="futures::stream::TryChunksError struct">TryChunksError</a></div><div class="item-right docblock-short">Error indicating, that while chunk was collected inner stream produced an error.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryCollect.html" title="futures::stream::TryCollect struct">TryCollect</a></div><div class="item-right docblock-short">Future for the <a href="trait.TryStreamExt.html#method.try_collect"><code>try_collect</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryConcat.html" title="futures::stream::TryConcat struct">TryConcat</a></div><div class="item-right docblock-short">Future for the <a href="trait.TryStreamExt.html#method.try_concat"><code>try_concat</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryFilter.html" title="futures::stream::TryFilter struct">TryFilter</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_filter"><code>try_filter</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryFilterMap.html" title="futures::stream::TryFilterMap struct">TryFilterMap</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_filter_map"><code>try_filter_map</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryFlatten.html" title="futures::stream::TryFlatten struct">TryFlatten</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_flatten"><code>try_flatten</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryFlattenUnordered.html" title="futures::stream::TryFlattenUnordered struct">TryFlattenUnordered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_flatten_unordered"><code>try_flatten_unordered</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryFold.html" title="futures::stream::TryFold struct">TryFold</a></div><div class="item-right docblock-short">Future for the <a href="trait.TryStreamExt.html#method.try_fold"><code>try_fold</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryForEach.html" title="futures::stream::TryForEach struct">TryForEach</a></div><div class="item-right docblock-short">Future for the <a href="trait.TryStreamExt.html#method.try_for_each"><code>try_for_each</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryForEachConcurrent.html" title="futures::stream::TryForEachConcurrent struct">TryForEachConcurrent</a></div><div class="item-right docblock-short">Future for the
<a href="trait.TryStreamExt.html#method.try_for_each_concurrent"><code>try_for_each_concurrent</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryNext.html" title="futures::stream::TryNext struct">TryNext</a></div><div class="item-right docblock-short">Future for the <a href="trait.TryStreamExt.html#method.try_next"><code>try_next</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TrySkipWhile.html" title="futures::stream::TrySkipWhile struct">TrySkipWhile</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_skip_while"><code>try_skip_while</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryTakeWhile.html" title="futures::stream::TryTakeWhile struct">TryTakeWhile</a></div><div class="item-right docblock-short">Stream for the <a href="trait.TryStreamExt.html#method.try_take_while"><code>try_take_while</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TryUnfold.html" title="futures::stream::TryUnfold struct">TryUnfold</a></div><div class="item-right docblock-short">Stream for the <a href="fn.try_unfold.html" title="try_unfold"><code>try_unfold</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Unfold.html" title="futures::stream::Unfold struct">Unfold</a></div><div class="item-right docblock-short">Stream for the <a href="fn.unfold.html" title="unfold"><code>unfold</code></a> function.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Unzip.html" title="futures::stream::Unzip struct">Unzip</a></div><div class="item-right docblock-short">Future for the <a href="trait.StreamExt.html#method.unzip"><code>unzip</code></a> method.</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Zip.html" title="futures::stream::Zip struct">Zip</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.zip"><code>zip</code></a> method.</div></div></div><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="enum" href="enum.PollNext.html" title="futures::stream::PollNext enum">PollNext</a></div><div class="item-right docblock-short">Type to tell <a href="struct.SelectWithStrategy.html" title="SelectWithStrategy"><code>SelectWithStrategy</code></a> which stream to poll next.</div></div></div><h2 id="traits" class="small-section-header"><a href="#traits">Traits</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.FusedStream.html" title="futures::stream::FusedStream trait">FusedStream</a></div><div class="item-right docblock-short">A stream which tracks whether or not the underlying stream
should no longer be polled.</div></div><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.Stream.html" title="futures::stream::Stream trait">Stream</a></div><div class="item-right docblock-short">A stream of values produced asynchronously.</div></div><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.StreamExt.html" title="futures::stream::StreamExt trait">StreamExt</a></div><div class="item-right docblock-short">An extension trait for <code>Stream</code>s that provides a variety of convenient
combinator functions.</div></div><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.TryStream.html" title="futures::stream::TryStream trait">TryStream</a></div><div class="item-right docblock-short">A convenience for streams that return <code>Result</code> values that includes
a variety of adapters tailored to such futures.</div></div><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.TryStreamExt.html" title="futures::stream::TryStreamExt trait">TryStreamExt</a></div><div class="item-right docblock-short">Adapters specific to <code>Result</code>-returning streams</div></div></div><h2 id="functions" class="small-section-header"><a href="#functions">Functions</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.abortable.html" title="futures::stream::abortable fn">abortable</a></div><div class="item-right docblock-short">Creates a new <code>Abortable</code> stream and an <code>AbortHandle</code> which can be used to stop it.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.empty.html" title="futures::stream::empty fn">empty</a></div><div class="item-right docblock-short">Creates a stream which contains no elements.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.iter.html" title="futures::stream::iter fn">iter</a></div><div class="item-right docblock-short">Converts an <code>Iterator</code> into a <code>Stream</code> which is always ready
to yield the next value.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.once.html" title="futures::stream::once fn">once</a></div><div class="item-right docblock-short">Creates a stream of a single element.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.pending.html" title="futures::stream::pending fn">pending</a></div><div class="item-right docblock-short">Creates a stream which never returns any elements.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.poll_fn.html" title="futures::stream::poll_fn fn">poll_fn</a></div><div class="item-right docblock-short">Creates a new stream wrapping a function returning <code>Poll&lt;Option&lt;T&gt;&gt;</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.poll_immediate.html" title="futures::stream::poll_immediate fn">poll_immediate</a></div><div class="item-right docblock-short">Creates a new stream that always immediately returns <a href="../task/enum.Poll.html#variant.Ready">Poll::Ready</a> when awaiting it.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.repeat.html" title="futures::stream::repeat fn">repeat</a></div><div class="item-right docblock-short">Create a stream which produces the same item repeatedly.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.repeat_with.html" title="futures::stream::repeat_with fn">repeat_with</a></div><div class="item-right docblock-short">Creates a new stream that repeats elements of type <code>A</code> endlessly by
applying the provided closure, the repeater, <code>F: FnMut() -&gt; A</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.select.html" title="futures::stream::select fn">select</a></div><div class="item-right docblock-short">This function will attempt to pull items from both streams. Each
stream will be polled in a round-robin fashion, and whenever a stream is
ready to yield an item that item is yielded.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.select_all.html" title="futures::stream::select_all fn">select_all</a></div><div class="item-right docblock-short">Convert a list of streams into a <code>Stream</code> of results from the streams.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.select_with_strategy.html" title="futures::stream::select_with_strategy fn">select_with_strategy</a></div><div class="item-right docblock-short">This function will attempt to pull items from both streams. You provide a
closure to tell <a href="struct.SelectWithStrategy.html" title="SelectWithStrategy"><code>SelectWithStrategy</code></a> which stream to poll. The closure can
store state on <code>SelectWithStrategy</code> to which it will receive a <code>&amp;mut</code> on every
invocation. This allows basing the strategy on prior choices.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.try_unfold.html" title="futures::stream::try_unfold fn">try_unfold</a></div><div class="item-right docblock-short">Creates a <code>TryStream</code> from a seed and a closure returning a <code>TryFuture</code>.</div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.unfold.html" title="futures::stream::unfold fn">unfold</a></div><div class="item-right docblock-short">Creates a <code>Stream</code> from a seed and a closure returning a <code>Future</code>.</div></div></div><h2 id="types" class="small-section-header"><a href="#types">Type Definitions</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="type" href="type.BoxStream.html" title="futures::stream::BoxStream type">BoxStream</a></div><div class="item-right docblock-short">An owned dynamically typed <a href="trait.Stream.html" title="Stream"><code>Stream</code></a> for use in cases where you can’t
statically type your result or need to add some indirection.</div></div><div class="item-row"><div class="item-left module-item"><a class="type" href="type.FlattenUnordered.html" title="futures::stream::FlattenUnordered type">FlattenUnordered</a></div><div class="item-right docblock-short">Stream for the <a href="trait.StreamExt.html#method.flatten_unordered"><code>flatten_unordered</code></a>
method.</div></div><div class="item-row"><div class="item-left module-item"><a class="type" href="type.LocalBoxStream.html" title="futures::stream::LocalBoxStream type">LocalBoxStream</a></div><div class="item-right docblock-short"><code>BoxStream</code>, but without the <code>Send</code> requirement.</div></div></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="futures" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>