overclock::core

Trait ChannelBuilder

Source
pub trait ChannelBuilder<C: Channel> {
    // Required method
    fn build_channel<'life0, 'async_trait>(
        &'life0 mut self,
    ) -> Pin<Box<dyn Future<Output = ActorResult<C>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Channel builder trait, to be implemented on the actor type

Required Methods§

Source

fn build_channel<'life0, 'async_trait>( &'life0 mut self, ) -> Pin<Box<dyn Future<Output = ActorResult<C>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Implement how to build the channel for the corresponding actor

Implementors§

Source§

impl<E: Send + 'static, T> ChannelBuilder<AbortableUnboundedChannel<E>> for T
where T: Send,

Source§

impl<E: Send + 'static, T, const C: usize> ChannelBuilder<AbortableBoundedChannel<E, C>> for T
where T: Send,

Source§

impl<E: ShutdownEvent + 'static, T> ChannelBuilder<UnboundedChannel<E>> for T
where T: Send,

Source§

impl<E: ShutdownEvent + 'static, T, const C: usize> ChannelBuilder<BoundedChannel<E, C>> for T
where T: Send,

Source§

impl<T> ChannelBuilder<NullChannel> for T
where T: Send,

Source§

impl<T, C, B: Send + 'static + Sync> ChannelBuilder<Marker<C, B>> for T
where T: Send + ChannelBuilder<C>, C: Channel,

Source§

impl<T, const I: u64> ChannelBuilder<IntervalChannel<I>> for T
where T: Send,