Struct futures_util::stream::Fuse [−][src]
#[must_use = "streams do nothing unless polled"]pub struct Fuse<St> { /* fields omitted */ }
A stream which "fuse"s a stream once it's terminated.
Normally streams can behave unpredictably when used after they have already
finished, but Fuse
continues to return None
from poll
forever when
finished.
Methods
impl<St: Stream> Fuse<St>
[src]
impl<St: Stream> Fuse<St>
pub fn is_done(&self) -> bool
[src]
pub fn is_done(&self) -> bool
Returns whether the underlying stream has finished or not.
If this method returns true
, then all future calls to poll are
guaranteed to return None
. If this returns false
, then the
underlying stream is still in use.
ⓘImportant traits for &'a mut Wpub fn get_ref(&self) -> &St
[src]
pub fn get_ref(&self) -> &St
Acquires a reference to the underlying stream that this combinator is pulling from.
ⓘImportant traits for &'a mut Wpub fn get_mut(&mut self) -> &mut St
[src]
pub fn get_mut(&mut self) -> &mut St
Acquires a mutable reference to the underlying stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the stream which may otherwise confuse this combinator.
pub fn get_pin_mut<'a>(self: PinMut<'a, Self>) -> PinMut<'a, St>
[src]
pub fn get_pin_mut<'a>(self: PinMut<'a, Self>) -> PinMut<'a, St>
Acquires a mutable pinned reference to the underlying stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the stream which may otherwise confuse this combinator.
pub fn into_inner(self) -> St
[src]
pub fn into_inner(self) -> St
Consumes this combinator, returning the underlying stream.
Note that this may discard intermediate state of this combinator, so care should be taken to avoid losing resources when this is called.
Trait Implementations
impl<St: Debug> Debug for Fuse<St>
[src]
impl<St: Debug> Debug for Fuse<St>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<St: Unpin> Unpin for Fuse<St>
[src]
impl<St: Unpin> Unpin for Fuse<St>
impl<S: Stream> Stream for Fuse<S>
[src]
impl<S: Stream> Stream for Fuse<S>
type Item = S::Item
Values yielded by the stream.
fn poll_next(self: PinMut<Self>, cx: &mut Context) -> Poll<Option<S::Item>>
[src]
fn poll_next(self: PinMut<Self>, cx: &mut Context) -> Poll<Option<S::Item>>
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 None
if the stream is exhausted. Read more
impl<S: Stream + Sink> Sink for Fuse<S>
[src]
impl<S: Stream + Sink> Sink for Fuse<S>
type SinkItem = S::SinkItem
The type of value that the sink accepts.
type SinkError = S::SinkError
The type of value produced by the sink when an error occurs.
fn poll_ready(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
[src]
fn poll_ready(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
Attempts to prepare the Sink
to receive a value. Read more
fn start_send(
self: PinMut<Self>,
item: Self::SinkItem
) -> Result<(), Self::SinkError>
[src]
fn start_send(
self: PinMut<Self>,
item: Self::SinkItem
) -> Result<(), Self::SinkError>
Begin the process of sending a value to the sink. Each call to this function must be proceeded by a successful call to poll_ready
which returned Ok(Poll::Ready(()))
. Read more
fn poll_flush(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
[src]
fn poll_flush(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
Flush any remaining output from this sink. Read more
fn poll_close(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
[src]
fn poll_close(
self: PinMut<Self>,
cx: &mut Context
) -> Poll<Result<(), Self::SinkError>>
Flush any remaining output and close this sink, if necessary. Read more