Struct Enumerate

#[must_use = "streams do nothing unless polled"]
pub struct Enumerate<St> { /* private fields */ }

Stream for the enumerate method.

Implementations

impl<St: Stream> Enumerate<St>

fn get_ref(&self) -> &St

Acquires a reference to the underlying sink or stream that this combinator is pulling from.

fn get_mut(&mut self) -> &mut St

Acquires a mutable reference to the underlying sink or stream that this combinator is pulling from.

Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.

fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut St>

Acquires a pinned mutable reference to the underlying sink or stream that this combinator is pulling from.

Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.

fn into_inner(self) -> St

Consumes this combinator, returning the underlying sink or 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<'__pin, St> Unpin for Enumerate<St> where PinnedFieldsOf<__Origin<'__pin, St>>: Unpin,

impl<S, Item> Sink<Item> for Enumerate<S> where S: Stream + Sink<Item>,

type Error = <S as Sink<Item>>::Error;
fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn start_send(self: Pin<&mut Self>, item: Item) -> Result<(), Self::Error>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn poll_close(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>

impl<St: Debug> Debug for Enumerate<St>

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl<St: Stream + FusedStream> FusedStream for Enumerate<St>

fn is_terminated(&self) -> bool

impl<St: Stream> Stream for Enumerate<St>

type Item = (usize, <St as Stream>::Item);
fn poll_next(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>
fn size_hint(&self) -> (usize, Option<usize>)

Auto Trait Implementations

impl<St> Freeze for Enumerate<St> where St: Freeze,

impl<St> RefUnwindSafe for Enumerate<St> where St: RefUnwindSafe,

impl<St> Send for Enumerate<St> where St: Send,

impl<St> Sync for Enumerate<St> where St: Sync,

impl<St> UnsafeUnpin for Enumerate<St> where St: UnsafeUnpin,

impl<St> UnwindSafe for Enumerate<St> where St: UnwindSafe,

Blanket Implementations

impl<T> Any for Enumerate<St> where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for Enumerate<St> where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for Enumerate<St> where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> From<T> for Enumerate<St>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> StreamExt for Enumerate<St> where T: Stream + ?Sized,

impl<T, Item> SinkExt<Item> for Enumerate<St> where T: Sink<Item> + ?Sized,

impl<T, U> Into<U> for Enumerate<St> where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for Enumerate<St> where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for Enumerate<St> where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>