[][src]Struct actix_utils::either::EitherService

pub struct EitherService<A, B> { /* fields omitted */ }

Combine two different service types into a single type.

Both services must be of the same request, response, and error types. EitherService is useful for handling conditional branching in service middleware to different inner service types.

Trait Implementations

impl<A: Clone, B: Clone> Clone for EitherService<A, B>[src]

impl<A, B> Service for EitherService<A, B> where
    A: Service,
    B: Service<Response = A::Response, Error = A::Error>, 
[src]

type Request = Either<A::Request, B::Request>

Requests handled by the service.

type Response = A::Response

Responses given by the service.

type Error = A::Error

Errors produced by the service.

type Future = Either<A::Future, B::Future>

The future response value.

Auto Trait Implementations

impl<A, B> Send for EitherService<A, B> where
    A: Send,
    B: Send

impl<A, B> Sync for EitherService<A, B> where
    A: Sync,
    B: Sync

impl<A, B> Unpin for EitherService<A, B> where
    A: Unpin,
    B: Unpin

impl<A, B> UnwindSafe for EitherService<A, B> where
    A: UnwindSafe,
    B: UnwindSafe

impl<A, B> RefUnwindSafe for EitherService<A, B> where
    A: RefUnwindSafe,
    B: RefUnwindSafe

Blanket Implementations

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

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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

type Error = !

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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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

impl<T> IntoService<T> for T where
    T: Service
[src]