pub trait IComponentProcess<TConfig, TMsg, TService>where
TMsg: MsgDataBound,
TService: ServiceBound,{
// Required method
fn process<'life0, 'async_trait>(
&'life0 self,
config: TConfig,
in_out: CmpInOut<TMsg, TService>,
) -> Pin<Box<dyn Future<Output = CmpResult> + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}
Expand description
Трейт основной функции компонента
Каждый компонент должен определить данный трейт
Required Methods§
Implementors§
impl<TMessage, TService> IComponentProcess<Config<TMessage>, TMessage, TService> for Component<Config<TMessage>, TMessage, TService>where
TMessage: MsgDataBound + 'static,
TService: ServiceBound + 'static,
impl<TMsg, TFnPeriodic, TService> IComponentProcess<Config<TMsg, TFnPeriodic>, TMsg, TService> for Component<Config<TMsg, TFnPeriodic>, TMsg, TService>where
TMsg: MsgDataBound,
TFnPeriodic: FnMut() -> Vec<Message<TMsg>> + Send + Sync,
TService: ServiceBound,
impl<TMsg, TService> IComponentProcess<Config<TMsg>, TMsg, TService> for Component<Config<TMsg>, TMsg, TService>where
TMsg: MsgDataBound + 'static,
TService: ServiceBound,
Компонент для добавления сообщений из побочного потока