async_rx

Struct Switch

Source
pub struct Switch<S: Stream> { /* private fields */ }
Expand description

Stream adapter produced by StreamExt::switch.

Trait Implementations§

Source§

impl<S> Stream for Switch<S>
where S: Stream, S::Item: Stream,

Source§

type Item = <<S as Stream>::Item as Stream>::Item

Values yielded by the stream.
Source§

fn poll_next( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Option<Self::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
Source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the stream. Read more
Source§

impl<'__pin, S: Stream> Unpin for Switch<S>
where PinnedFieldsOf<__Origin<'__pin, S>>: Unpin,

Auto Trait Implementations§

§

impl<S> Freeze for Switch<S>
where S: Freeze, <S as Stream>::Item: Freeze,

§

impl<S> RefUnwindSafe for Switch<S>

§

impl<S> Send for Switch<S>
where S: Send, <S as Stream>::Item: Send,

§

impl<S> Sync for Switch<S>
where S: Sync, <S as Stream>::Item: Sync,

§

impl<S> UnwindSafe for Switch<S>
where S: UnwindSafe, <S as Stream>::Item: UnwindSafe,

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<S> StreamExt for S
where S: Stream,

Source§

fn dedup(self) -> Dedup<Self>
where Self::Item: Clone + PartialEq,

Deduplicate consecutive identical items. Read more
Source§

fn dedup_by_key<T, F>(self, key_fn: F) -> DedupByKey<Self, T, F>
where T: PartialEq, F: FnMut(&Self::Item) -> T,

Deduplicate consecutive items that the given function produces the same key for.
Source§

fn batch_with<S>(self, batch_done_stream: S) -> BatchWith<Self, S>
where S: Stream<Item = ()>,

Buffer the items from self until batch_done_stream produces a value, and return all buffered values in one batch. Read more
Source§

fn switch(self) -> Switch<Self>
where Self::Item: Stream,

Flattens a stream of streams by always keeping one inner stream and yielding its items until the outer stream produces a new inner stream, at which point the inner stream to yield items from is switched to the new one. Read more
Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

impl<S, T, E> TryStream for S
where S: Stream<Item = Result<T, E>> + ?Sized,

Source§

type Ok = T

The type of successful values yielded by this future
Source§

type Error = E

The type of failures yielded by this future
Source§

fn try_poll_next( self: Pin<&mut S>, cx: &mut Context<'_>, ) -> Poll<Option<Result<<S as TryStream>::Ok, <S as TryStream>::Error>>>

Poll this TryStream as if it were a Stream. Read more