[−][src]Struct actix_utils::either::EitherService
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]
fn clone(&self) -> Self
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<A, B> Service for EitherService<A, B> where
A: Service,
B: Service<Response = A::Response, Error = A::Error>,
[src]
A: Service,
B: Service<Response = A::Response, Error = A::Error>,
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.
fn poll_ready(&mut self) -> Poll<(), Self::Error>
[src]
fn call(&mut self, req: Either<A::Request, B::Request>) -> Self::Future
[src]
Auto Trait Implementations
impl<A, B> Unpin for EitherService<A, B> where
A: Unpin,
B: Unpin,
A: Unpin,
B: Unpin,
impl<A, B> Sync for EitherService<A, B> where
A: Sync,
B: Sync,
A: Sync,
B: Sync,
impl<A, B> Send for EitherService<A, B> where
A: Send,
B: Send,
A: Send,
B: Send,
impl<A, B> RefUnwindSafe for EitherService<A, B> where
A: RefUnwindSafe,
B: RefUnwindSafe,
A: RefUnwindSafe,
B: RefUnwindSafe,
impl<A, B> UnwindSafe for EitherService<A, B> where
A: UnwindSafe,
B: UnwindSafe,
A: UnwindSafe,
B: UnwindSafe,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> IntoService<T> for T where
T: Service,
[src]
T: Service,
fn into_service(self) -> T
[src]
impl<T> ServiceExt for T where
T: Service + ?Sized,
[src]
T: Service + ?Sized,
fn apply_fn<F, B, B1, Out>(
self,
service: B1,
f: F
) -> AndThenApply<Self, B, F, Out> where
B: Service<Error = Self::Error>,
B1: IntoService<B>,
F: FnMut(Self::Response, &mut B) -> Out,
Out: IntoFuture,
<Out as IntoFuture>::Error: Into<Self::Error>,
[src]
self,
service: B1,
f: F
) -> AndThenApply<Self, B, F, Out> where
B: Service<Error = Self::Error>,
B1: IntoService<B>,
F: FnMut(Self::Response, &mut B) -> Out,
Out: IntoFuture,
<Out as IntoFuture>::Error: Into<Self::Error>,
Apply function to specified service and use it as a next service in chain. Read more
fn and_then<F, B>(self, service: F) -> AndThen<Self, B> where
B: Service<Request = Self::Response, Error = Self::Error>,
F: IntoService<B>,
[src]
B: Service<Request = Self::Response, Error = Self::Error>,
F: IntoService<B>,
Call another service after call to this one has resolved successfully. Read more
fn from_err<E>(self) -> FromErr<Self, E> where
E: From<Self::Error>,
[src]
E: From<Self::Error>,
Map this service's error to any error implementing From
for this services
Error`. Read more
fn then<B>(self, service: B) -> Then<Self, B> where
B: Service<Request = Result<Self::Response, Self::Error>, Error = Self::Error>,
[src]
B: Service<Request = Result<Self::Response, Self::Error>, Error = Self::Error>,
Chain on a computation for when a call to the service finished, passing the result of the call to the next service B
. Read more
fn map<F, R>(self, f: F) -> Map<Self, F, R> where
F: FnMut(Self::Response) -> R,
[src]
F: FnMut(Self::Response) -> R,
Map this service's output to a different type, returning a new service of the resulting type. Read more
fn map_err<F, E>(self, f: F) -> MapErr<Self, F, E> where
F: Fn(Self::Error) -> E,
[src]
F: Fn(Self::Error) -> E,
Map this service's error to a different error, returning a new service. Read more