Trait ztopic::Topic

source ·
pub trait Topic<S, K>
where K: Clone + Default + Hash + Eq, Self: Send + 'static, Self::Output: Send + 'static, Self::Error: Send + 'static, Self::References: Deref<Target = Self::Output> + for<'a> From<&'a Self::Output> + 'static, Self::Storage: Storage<Self::Output> + 'static,
{ type Output; type Error; type References; type Storage; // Required methods fn storage(&self) -> Self::Storage; fn mount( &self, manager: TopicManager<S>, storage: StorageManager<K, Self::Output, Self::Storage>, ) -> BoxStream<'static, Result<(), Self::Error>>; // Provided method fn topic_id(&self) -> impl Debug + Hash { ... } }

Required Associated Types§

Required Methods§

source

fn storage(&self) -> Self::Storage

source

fn mount( &self, manager: TopicManager<S>, storage: StorageManager<K, Self::Output, Self::Storage>, ) -> BoxStream<'static, Result<(), Self::Error>>

Provided Methods§

source

fn topic_id(&self) -> impl Debug + Hash

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<I, O, E, S> Topic<S, ()> for Empty<I, O, E>
where I: Debug + Hash + Clone + Send + 'static, O: Send + 'static, E: Send + 'static, S: Send + 'static,

§

type Output = O

§

type Error = E

§

type References = RawRef<<Empty<I, O, E> as Topic<S, ()>>::Output>

§

type Storage = Broadcast<<Empty<I, O, E> as Topic<S, ()>>::Output>

source§

impl<S> Topic<S, ()> for Interval