89 lines
25 KiB
HTML
89 lines
25 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="A stream of values produced asynchronously."><title>Stream in futures_core::stream - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.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"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_core" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Stream</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_core/index.html">futures_<wbr>core</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Stream</a></h2><h3><a href="#required-associated-types">Required Associated Types</a></h3><ul class="block"><li><a href="#associatedtype.Item" title="Item">Item</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.poll_next" title="poll_next">poll_next</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.size_hint" title="size_hint">size_hint</a></li></ul><h3><a href="#foreign-impls">Implementations on Foreign Types</a></h3><ul class="block"><li><a href="#impl-Stream-for-%26mut+S" title="&mut S">&mut S</a></li><li><a href="#impl-Stream-for-AssertUnwindSafe%3CS%3E" title="AssertUnwindSafe<S>">AssertUnwindSafe<S></a></li><li><a href="#impl-Stream-for-Box%3CS%3E" title="Box<S>">Box<S></a></li><li><a href="#impl-Stream-for-Pin%3CP%3E" title="Pin<P>">Pin<P></a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In futures_<wbr>core::<wbr>stream</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_core</a>::<wbr><a href="index.html">stream</a></div><h1>Trait <span class="trait">Stream</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/futures_core/stream.rs.html#37-108">Source</a> </span></div><pre class="rust item-decl"><code>pub trait Stream {
|
||
type <a href="#associatedtype.Item" class="associatedtype">Item</a>;
|
||
|
||
// Required method
|
||
fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>>;
|
||
|
||
// Provided method
|
||
fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>) { ... }
|
||
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A stream of values produced asynchronously.</p>
|
||
<p>If <code>Future<Output = T></code> is an asynchronous version of <code>T</code>, then <code>Stream<Item = T></code> is an asynchronous version of <code>Iterator<Item = T></code>. A stream
|
||
represents a sequence of value-producing events that occur asynchronously to
|
||
the caller.</p>
|
||
<p>The trait is modeled after <code>Future</code>, but allows <code>poll_next</code> to be called
|
||
even after a value has been produced, yielding <code>None</code> once the stream has
|
||
been fully exhausted.</p>
|
||
</div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Item" class="method"><a class="src rightside" href="../../src/futures_core/stream.rs.html#39">Source</a><h4 class="code-header">type <a href="#associatedtype.Item" class="associatedtype">Item</a></h4></section></summary><div class="docblock"><p>Values yielded by the stream.</p>
|
||
</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.poll_next" class="method"><a class="src rightside" href="../../src/futures_core/stream.rs.html#76">Source</a><h4 class="code-header">fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>></h4></section></summary><div class="docblock"><p>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.</p>
|
||
<h5 id="return-value"><a class="doc-anchor" href="#return-value">§</a>Return value</h5>
|
||
<p>There are several possible return values, each indicating a distinct
|
||
stream state:</p>
|
||
<ul>
|
||
<li>
|
||
<p><code>Poll::Pending</code> means that this stream’s next value is not ready
|
||
yet. Implementations will ensure that the current task will be notified
|
||
when the next value may be ready.</p>
|
||
</li>
|
||
<li>
|
||
<p><code>Poll::Ready(Some(val))</code> means that the stream has successfully
|
||
produced a value, <code>val</code>, and may produce further values on subsequent
|
||
<code>poll_next</code> calls.</p>
|
||
</li>
|
||
<li>
|
||
<p><code>Poll::Ready(None)</code> means that the stream has terminated, and
|
||
<code>poll_next</code> should not be invoked again.</p>
|
||
</li>
|
||
</ul>
|
||
<h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
|
||
<p>Once a stream has finished (returned <code>Ready(None)</code> from <code>poll_next</code>), calling its
|
||
<code>poll_next</code> method again may panic, block forever, or cause other kinds of
|
||
problems; the <code>Stream</code> trait places no requirements on the effects of
|
||
such a call. However, as the <code>poll_next</code> method is not marked <code>unsafe</code>,
|
||
Rust’s usual rules apply: calls must never cause undefined behavior
|
||
(memory corruption, incorrect use of <code>unsafe</code> functions, or the like),
|
||
regardless of the stream’s state.</p>
|
||
<p>If this is difficult to guard against then the <a href="https://docs.rs/futures/0.3/futures/stream/trait.StreamExt.html#method.fuse"><code>fuse</code></a> adapter can be used
|
||
to ensure that <code>poll_next</code> always returns <code>Ready(None)</code> in subsequent
|
||
calls.</p>
|
||
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.size_hint" class="method"><a class="src rightside" href="../../src/futures_core/stream.rs.html#105-107">Source</a><h4 class="code-header">fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>)</h4></section></summary><div class="docblock"><p>Returns the bounds on the remaining length of the stream.</p>
|
||
<p>Specifically, <code>size_hint()</code> returns a tuple where the first element
|
||
is the lower bound, and the second element is the upper bound.</p>
|
||
<p>The second half of the tuple that is returned is an <a href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option"><code>Option</code></a><code><</code><a href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html" title="primitive usize"><code>usize</code></a><code>></code>.
|
||
A <a href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html#variant.None" title="variant core::option::Option::None"><code>None</code></a> here means that either there is no known upper bound, or the
|
||
upper bound is larger than <a href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html" title="primitive usize"><code>usize</code></a>.</p>
|
||
<h5 id="implementation-notes"><a class="doc-anchor" href="#implementation-notes">§</a>Implementation notes</h5>
|
||
<p>It is not enforced that a stream implementation yields the declared
|
||
number of elements. A buggy stream may yield less than the lower bound
|
||
or more than the upper bound of elements.</p>
|
||
<p><code>size_hint()</code> is primarily intended to be used for optimizations such as
|
||
reserving space for the elements of the stream, but must not be
|
||
trusted to e.g., omit bounds checks in unsafe code. An incorrect
|
||
implementation of <code>size_hint()</code> should not lead to memory safety
|
||
violations.</p>
|
||
<p>That said, the implementation should provide a correct estimation,
|
||
because otherwise it would be a violation of the trait’s protocol.</p>
|
||
<p>The default implementation returns <code>(0, </code><a href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html#variant.None" title="variant core::option::Option::None"><code>None</code></a><code>)</code> which is correct for any
|
||
stream.</p>
|
||
</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-Stream-for-Pin%3CP%3E" class="impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#122-136">Source</a><a href="#impl-Stream-for-Pin%3CP%3E" class="anchor">§</a><h3 class="code-header">impl<P> <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> for <a class="struct" href="https://doc.rust-lang.org/1.93.1/core/pin/struct.Pin.html" title="struct core::pin::Pin">Pin</a><P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
|
||
P::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/ops/deref/trait.Deref.html#associatedtype.Target" title="type core::ops::deref::Deref::Target">Target</a>: <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>,</div></h3></section></summary><div class="impl-items"><section id="associatedtype.Item-1" class="associatedtype trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#127">Source</a><a href="#associatedtype.Item-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Item" class="associatedtype">Item</a> = <<P as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/ops/deref/trait.Deref.html#associatedtype.Target" title="type core::ops::deref::Deref::Target">Target</a> as <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>>::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a></h4></section><section id="method.poll_next" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#129-131">Source</a><a href="#method.poll_next" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>></h4></section><section id="method.size_hint-1" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#133-135">Source</a><a href="#method.size_hint-1" class="anchor">§</a><h4 class="code-header">fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>)</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Stream-for-AssertUnwindSafe%3CS%3E" class="impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#228-238">Source</a><a href="#impl-Stream-for-AssertUnwindSafe%3CS%3E" class="anchor">§</a><h3 class="code-header">impl<S: <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>> <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> for <a class="struct" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/struct.AssertUnwindSafe.html" title="struct core::panic::unwind_safe::AssertUnwindSafe">AssertUnwindSafe</a><S></h3><span class="item-info"><div class="stab portability">Available on <strong>crate feature <code>std</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="associatedtype.Item-2" class="associatedtype trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#229">Source</a><a href="#associatedtype.Item-2" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Item" class="associatedtype">Item</a> = <S as <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>>::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a></h4></section><section id="method.poll_next-1" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#231-233">Source</a><a href="#method.poll_next-1" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><S::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>></h4></section><section id="method.size_hint-2" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#235-237">Source</a><a href="#method.size_hint-2" class="anchor">§</a><h4 class="code-header">fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>)</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Stream-for-%26mut+S" class="impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#110-120">Source</a><a href="#impl-Stream-for-%26mut+S" class="anchor">§</a><h3 class="code-header">impl<S: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>> <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> for <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut S</a></h3></section></summary><div class="impl-items"><section id="associatedtype.Item-3" class="associatedtype trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#111">Source</a><a href="#associatedtype.Item-3" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Item" class="associatedtype">Item</a> = <S as <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>>::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a></h4></section><section id="method.poll_next-2" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#113-115">Source</a><a href="#method.poll_next-2" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>></h4></section><section id="method.size_hint-3" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#117-119">Source</a><a href="#method.size_hint-3" class="anchor">§</a><h4 class="code-header">fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>)</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Stream-for-Box%3CS%3E" class="impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#215-225">Source</a><a href="#impl-Stream-for-Box%3CS%3E" class="anchor">§</a><h3 class="code-header">impl<S: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>> <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a> for <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><S></h3></section></summary><div class="impl-items"><section id="associatedtype.Item-4" class="associatedtype trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#216">Source</a><a href="#associatedtype.Item-4" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Item" class="associatedtype">Item</a> = <S as <a class="trait" href="trait.Stream.html" title="trait futures_core::stream::Stream">Stream</a>>::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a></h4></section><section id="method.poll_next-3" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#218-220">Source</a><a href="#method.poll_next-3" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.poll_next" class="fn">poll_next</a>(
|
||
self: <a class="struct" href="https://doc.rust-lang.org/1.93.1/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.93.1/core/task/wake/struct.Context.html" title="struct core::task::wake::Context">Context</a><'_>,
|
||
) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/task/poll/enum.Poll.html" title="enum core::task::poll::Poll">Poll</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.Stream.html#associatedtype.Item" title="type futures_core::stream::Stream::Item">Item</a>>></h4></section><section id="method.size_hint-4" class="method trait-impl"><a class="src rightside" href="../../src/futures_core/stream.rs.html#222-224">Source</a><a href="#method.size_hint-4" class="anchor">§</a><h4 class="code-header">fn <a href="#method.size_hint" class="fn">size_hint</a>(&self) -> (<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>>)</h4></section></div></details><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../trait.impl/futures_core/stream/trait.Stream.js" data-ignore-extern-crates="core,alloc" async></script></section></div></main></body></html> |