Trait IButtonHandler

Source
pub trait IButtonHandler: Send + Sync {
    type TData: Sync + Send + for<'de> Deserialize<'de> + 'static;
    type TMetaData: Sync + Send + for<'de> Deserialize<'de> + 'static;

    // Required method
    fn handle<'life0, 'async_trait>(
        &'life0 mut self,
        button_text: String,
        data: Self::TData,
        metadata: Self::TMetaData,
        request_context: RequestContext,
    ) -> Pin<Box<dyn Future<Output = CommandResult> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}

Required Associated Types§

Source

type TData: Sync + Send + for<'de> Deserialize<'de> + 'static

Source

type TMetaData: Sync + Send + for<'de> Deserialize<'de> + 'static

Required Methods§

Source

fn handle<'life0, 'async_trait>( &'life0 mut self, button_text: String, data: Self::TData, metadata: Self::TMetaData, request_context: RequestContext, ) -> Pin<Box<dyn Future<Output = CommandResult> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Implementors§