Skip to main content

StaticHandler

Trait StaticHandler 

Source
pub trait StaticHandler<R, Req, Dependencies>: Clone {
    type Response;
    type Error;

    // Required method
    fn handle(
        self,
        resources: &R,
        value: Req,
    ) -> impl Future<Output = Result<Self::Response, Self::Error>> + Send;
}
Expand description

A statically dispatched async handler function.

Required Associated Types§

Required Methods§

Source

fn handle( self, resources: &R, value: Req, ) -> impl Future<Output = Result<Self::Response, Self::Error>> + Send

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6, T7, I7> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>, Dependency<T3, I3>, Dependency<T4, I4>, Dependency<T5, I5>, Dependency<T6, I6>, Dependency<T7, I7>)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2> + Get<T3, I3> + Get<T4, I4> + Get<T5, I5> + Get<T6, I6> + Get<T7, I7>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5, T6, I6> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>, Dependency<T3, I3>, Dependency<T4, I4>, Dependency<T5, I5>, Dependency<T6, I6>)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2> + Get<T3, I3> + Get<T4, I4> + Get<T5, I5> + Get<T6, I6>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2, T3, I3, T4, I4, T5, I5> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>, Dependency<T3, I3>, Dependency<T4, I4>, Dependency<T5, I5>)> for F
where F: FnOnce(T1, T2, T3, T4, T5, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2> + Get<T3, I3> + Get<T4, I4> + Get<T5, I5>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2, T3, I3, T4, I4> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>, Dependency<T3, I3>, Dependency<T4, I4>)> for F
where F: FnOnce(T1, T2, T3, T4, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2> + Get<T3, I3> + Get<T4, I4>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2, T3, I3> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>, Dependency<T3, I3>)> for F
where F: FnOnce(T1, T2, T3, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2> + Get<T3, I3>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1, T2, I2> StaticHandler<R, Req, (Dependency<T1, I1>, Dependency<T2, I2>)> for F
where F: FnOnce(T1, T2, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1> + Get<T2, I2>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E, T1, I1> StaticHandler<R, Req, (Dependency<T1, I1>,)> for F
where F: FnOnce(T1, Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, R: Get<T1, I1>, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E

Source§

impl<F, Fut, R, Req, Res, E> StaticHandler<R, Req, ()> for F
where F: FnOnce(Req) -> Fut + Clone + Send, Req: Send, Res: Send, E: Send, Fut: Future<Output = Result<Res, E>> + Send,

Source§

type Response = Res

Source§

type Error = E