Skip to main content

HandlerArgs

Trait HandlerArgs 

Source
pub trait HandlerArgs<T>:
    Clone
    + Send
    + Sized
    + 'static {
    type Future: Future<Output = ()> + Send + 'static;

    // Required method
    fn call(
        self,
        grpc: Message,
        env: PubSubEnvelope,
        app: Arc<App>,
    ) -> Self::Future;
}

Required Associated Types§

Source

type Future: Future<Output = ()> + Send + 'static

Required Methods§

Source

fn call(self, grpc: Message, env: PubSubEnvelope, app: Arc<App>) -> Self::Future

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send, T11: FromPubSubMsg + Send, T12: FromPubSubMsg + Send, T13: FromPubSubMsg + Send, T14: FromPubSubMsg + Send, T15: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send, T11: FromPubSubMsg + Send, T12: FromPubSubMsg + Send, T13: FromPubSubMsg + Send, T14: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send, T11: FromPubSubMsg + Send, T12: FromPubSubMsg + Send, T13: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send, T11: FromPubSubMsg + Send, T12: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send, T11: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send, T10: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8, T9> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8, T9)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8, T9) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send, T9: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7, T8> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7, T8)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7, T8) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send, T8: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6, T7> HandlerArgs<(T1, T2, T3, T4, T5, T6, T7)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6, T7) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send, T7: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5, T6> HandlerArgs<(T1, T2, T3, T4, T5, T6)> for F
where F: FnOnce(T1, T2, T3, T4, T5, T6) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send, T6: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4, T5> HandlerArgs<(T1, T2, T3, T4, T5)> for F
where F: FnOnce(T1, T2, T3, T4, T5) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send, T5: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3, T4> HandlerArgs<(T1, T2, T3, T4)> for F
where F: FnOnce(T1, T2, T3, T4) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send, T4: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2, T3> HandlerArgs<(T1, T2, T3)> for F
where F: FnOnce(T1, T2, T3) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send, T3: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1, T2> HandlerArgs<(T1, T2)> for F
where F: FnOnce(T1, T2) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send, T2: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut, T1> HandlerArgs<(T1,)> for F
where F: FnOnce(T1) -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static, T1: FromPubSubMsg + Send,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>

Source§

impl<F, Fut> HandlerArgs<()> for F
where F: FnOnce() -> Fut + Clone + Send + 'static, Fut: Future<Output = ()> + Send + 'static,

Source§

type Future = Pin<Box<dyn Future<Output = ()> + Send>>