Struct futures::prelude::stream::OrElse[][src]

#[must_use = "streams do nothing unless polled"]pub struct OrElse<St, Fut, F> { /* fields omitted */ }

Stream for the or_else method.

Implementations

impl<St, Fut, F> OrElse<St, Fut, F> where
    F: FnMut(<St as TryStream>::Error) -> Fut,
    Fut: TryFuture<Ok = <St as TryStream>::Ok>,
    St: TryStream
[src]

pub fn get_ref(&self) -> &St

Notable traits for &'_ mut F

impl<'_, F> Future for &'_ mut F where
    F: Future + Unpin + ?Sized
type Output = <F as Future>::Output;
[src]

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

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

Notable traits for &'_ mut F

impl<'_, F> Future for &'_ mut F where
    F: Future + Unpin + ?Sized
type Output = <F as Future>::Output;
[src]

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.

pub fn get_pin_mut(self: Pin<&mut OrElse<St, Fut, F>>) -> Pin<&mut St>

Notable traits for Pin<P>

impl<P> Future for Pin<P> where
    P: Unpin + DerefMut,
    <P as Deref>::Target: Future
type Output = <<P as Deref>::Target as Future>::Output;
[src]

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.

pub fn into_inner(self) -> St[src]

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<St, Fut, F> Debug for OrElse<St, Fut, F> where
    Fut: Debug,
    St: Debug
[src]

impl<St, Fut, F> FusedStream for OrElse<St, Fut, F> where
    F: FnMut(<St as TryStream>::Error) -> Fut,
    Fut: TryFuture<Ok = <St as TryStream>::Ok>,
    St: TryStream + FusedStream
[src]

impl<S, Fut, F, Item> Sink<Item> for OrElse<S, Fut, F> where
    S: Sink<Item>, 
[src]

type Error = <S as Sink<Item>>::Error

The type of value produced by the sink when an error occurs.

impl<St, Fut, F> Stream for OrElse<St, Fut, F> where
    F: FnMut(<St as TryStream>::Error) -> Fut,
    Fut: TryFuture<Ok = <St as TryStream>::Ok>,
    St: TryStream
[src]

type Item = Result<<St as TryStream>::Ok, <Fut as TryFuture>::Error>

Values yielded by the stream.

impl<'__pin, St, Fut, F> Unpin for OrElse<St, Fut, F> where
    __Origin<'__pin, St, Fut, F>: Unpin
[src]

Auto Trait Implementations

impl<St, Fut, F> RefUnwindSafe for OrElse<St, Fut, F> where
    F: RefUnwindSafe,
    Fut: RefUnwindSafe,
    St: RefUnwindSafe

impl<St, Fut, F> Send for OrElse<St, Fut, F> where
    F: Send,
    Fut: Send,
    St: Send

impl<St, Fut, F> Sync for OrElse<St, Fut, F> where
    F: Sync,
    Fut: Sync,
    St: Sync

impl<St, Fut, F> UnwindSafe for OrElse<St, Fut, F> where
    F: UnwindSafe,
    Fut: UnwindSafe,
    St: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, Item> SinkExt<Item> for T where
    T: Sink<Item> + ?Sized
[src]

impl<T> StreamExt for T where
    T: Stream + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

type Ok = T

The type of successful values yielded by this future

type Error = E

The type of failures yielded by this future

impl<S> TryStreamExt for S where
    S: TryStream + ?Sized
[src]