Struct tower::util::CallAllUnordered[][src]

pub struct CallAllUnordered<Svc, S> where
    Svc: Service<S::Item>,
    S: Stream
{ /* fields omitted */ }
This is supported on crate feature util only.

A stream of responses received from the inner service in received order.

Similar to CallAll except, instead of yielding responses in request order, responses are returned as they are available.

Implementations

impl<Svc, S> CallAllUnordered<Svc, S> where
    Svc: Service<S::Item>,
    Svc::Error: Into<BoxError>,
    S: Stream
[src]

pub fn new(service: Svc, stream: S) -> CallAllUnordered<Svc, S>[src]

Create new CallAllUnordered combinator.

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

Extract the wrapped Service.

Panics

Panics if take_service was already called.

pub fn take_service(self: Pin<&mut Self>) -> Svc[src]

Extract the wrapped Service.

This CallAllUnordered can no longer be used after this function has been called.

Panics

Panics if take_service was already called.

Trait Implementations

impl<Svc: Debug, S: Debug> Debug for CallAllUnordered<Svc, S> where
    Svc: Service<S::Item>,
    S: Stream,
    Svc::Future: Debug
[src]

impl<Svc, S> Stream for CallAllUnordered<Svc, S> where
    Svc: Service<S::Item>,
    Svc::Error: Into<BoxError>,
    S: Stream
[src]

type Item = Result<Svc::Response, BoxError>

Values yielded by the stream.

impl<'pin, Svc, S> Unpin for CallAllUnordered<Svc, S> where
    Svc: Service<S::Item>,
    S: Stream,
    __CallAllUnordered<'pin, Svc, S>: Unpin
[src]

Auto Trait Implementations

impl<Svc, S> !RefUnwindSafe for CallAllUnordered<Svc, S>

impl<Svc, S> Send for CallAllUnordered<Svc, S> where
    S: Send,
    Svc: Send,
    <Svc as Service<<S as Stream>::Item>>::Future: Send

impl<Svc, S> Sync for CallAllUnordered<Svc, S> where
    S: Sync,
    Svc: Sync,
    <Svc as Service<<S as Stream>::Item>>::Future: Sync

impl<Svc, S> !UnwindSafe for CallAllUnordered<Svc, S>

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<K, S, E, D> Discover for D where
    D: TryStream<Ok = Change<K, S>, Error = E> + ?Sized,
    K: Eq
[src]

type Key = K

This is supported on crate feature discover only.

A unique identifier for each active service. Read more

type Service = S

This is supported on crate feature discover only.

The type of Service yielded by this Discover. Read more

type Error = E

This is supported on crate feature discover only.

Error produced during discovery

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

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[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]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,