Trait tower::filter::AsyncPredicate

source ·
pub trait AsyncPredicate<Request> {
    type Future: Future<Output = Result<Self::Request, BoxError>>;
    type Request;

    // Required method
    fn check(&mut self, request: Request) -> Self::Future;
}
Expand description

Checks a request asynchronously.

Required Associated Types§

source

type Future: Future<Output = Result<Self::Request, BoxError>>

The future returned by check.

source

type Request

The type of requests returned by check.

This request is forwarded to the inner service if the predicate succeeds.

Required Methods§

source

fn check(&mut self, request: Request) -> Self::Future

Check whether the given request should be forwarded.

If the future resolves with Ok, the request is forwarded to the inner service.

Implementors§

source§

impl<F, T, U, R, E> AsyncPredicate<T> for F
where F: FnMut(T) -> U, U: Future<Output = Result<R, E>>, E: Into<BoxError>,

§

type Future = ErrInto<U, Box<dyn Error + Sync + Send>>

§

type Request = R