SharedEmitter

Trait SharedEmitter 

Source
pub trait SharedEmitter: Emitter {
    // Required method
    fn emit<O>(self, subscriber: Subscriber<O, SharedSubscription>)
       where O: Observer<Item = Self::Item, Err = Self::Err> + Send + Sync + 'static;
}

Required Methods§

Source

fn emit<O>(self, subscriber: Subscriber<O, SharedSubscription>)
where O: Observer<Item = Self::Item, Err = Self::Err> + Send + Sync + 'static,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl SharedEmitter for NeverEmitter

Source§

impl<Err> SharedEmitter for ThrowEmitter<Err>

Source§

impl<F, Item, Err> SharedEmitter for FnEmitter<F, Item, Err>
where F: FnOnce(Subscriber<Box<dyn Observer<Item = Item, Err = Err> + Send + Sync + 'static>, SharedSubscription>),

Source§

impl<F, Item: 'static, Emit, Err: 'static> SharedEmitter for DeferEmitter<F, Item, Err>
where F: FnOnce() -> Emit, Emit: SharedObservable + Observable<Item = Item, Err = Err>,

Source§

impl<Item> SharedEmitter for OfEmitter<Item>

Source§

impl<Item> SharedEmitter for OptionEmitter<Item>

Source§

impl<Item> SharedEmitter for EmptyEmitter<Item>

Source§

impl<Item, Err> SharedEmitter for ResultEmitter<Item, Err>

Source§

impl<Item, F> SharedEmitter for CallableEmitter<F>
where F: FnOnce() -> Item,

Source§

impl<Item: Send + 'static, S: SharedScheduler + 'static> SharedEmitter for TimerEmitter<Item, S>

Source§

impl<S: SharedScheduler + 'static> SharedEmitter for IntervalEmitter<S>