[][src]Trait omnistreams::Producer

pub trait Producer<T>: Streamer where
    T: Send + 'static, 
{ fn request(&mut self, num_items: usize);
fn event_stream(&mut self) -> Option<ProducerEventRx<T>>;
fn set_event_stream(&mut self, event_stream: ProducerEventRx<T>); fn pipe_into<C>(self, consumer: C)
    where
        Self: Sized + Send + 'static,
        C: Consumer<T> + Sized + Send + 'static,
        T: Send + 'static
, { ... }
fn pipe_through<C, U>(self, conduit: C) -> C::ConcreteProducer
    where
        Self: Sized + Send + 'static,
        C: Conduit<T, U> + Sized + Send + 'static,
        T: Send + 'static,
        U: Send + 'static,
        C::ConcreteConsumer: Send
, { ... }
fn events(&mut self) -> ProducerEventEmitter<T> { ... } }

Required methods

fn request(&mut self, num_items: usize)

fn event_stream(&mut self) -> Option<ProducerEventRx<T>>

fn set_event_stream(&mut self, event_stream: ProducerEventRx<T>)

Loading content...

Provided methods

fn pipe_into<C>(self, consumer: C) where
    Self: Sized + Send + 'static,
    C: Consumer<T> + Sized + Send + 'static,
    T: Send + 'static, 

fn pipe_through<C, U>(self, conduit: C) -> C::ConcreteProducer where
    Self: Sized + Send + 'static,
    C: Conduit<T, U> + Sized + Send + 'static,
    T: Send + 'static,
    U: Send + 'static,
    C::ConcreteConsumer: Send

fn events(&mut self) -> ProducerEventEmitter<T>

Loading content...

Implementors

impl Producer<i64> for RangeProducer[src]

fn pipe_into<C>(self, consumer: C) where
    Self: Sized + Send + 'static,
    C: Consumer<T> + Sized + Send + 'static,
    T: Send + 'static, 
[src]

fn pipe_through<C, U>(self, conduit: C) -> C::ConcreteProducer where
    Self: Sized + Send + 'static,
    C: Conduit<T, U> + Sized + Send + 'static,
    T: Send + 'static,
    U: Send + 'static,
    C::ConcreteConsumer: Send
[src]

fn events(&mut self) -> ProducerEventEmitter<T>[src]

impl<A, B> Producer<B> for MapConduit<A, B> where
    B: Send + 'static, 
[src]

fn pipe_into<C>(self, consumer: C) where
    Self: Sized + Send + 'static,
    C: Consumer<T> + Sized + Send + 'static,
    T: Send + 'static, 
[src]

fn pipe_through<C, U>(self, conduit: C) -> C::ConcreteProducer where
    Self: Sized + Send + 'static,
    C: Conduit<T, U> + Sized + Send + 'static,
    T: Send + 'static,
    U: Send + 'static,
    C::ConcreteConsumer: Send
[src]

fn events(&mut self) -> ProducerEventEmitter<T>[src]

impl<B> Producer<B> for MapProducer<B> where
    B: Send + 'static, 
[src]

fn pipe_into<C>(self, consumer: C) where
    Self: Sized + Send + 'static,
    C: Consumer<T> + Sized + Send + 'static,
    T: Send + 'static, 
[src]

fn pipe_through<C, U>(self, conduit: C) -> C::ConcreteProducer where
    Self: Sized + Send + 'static,
    C: Conduit<T, U> + Sized + Send + 'static,
    T: Send + 'static,
    U: Send + 'static,
    C::ConcreteConsumer: Send
[src]

fn events(&mut self) -> ProducerEventEmitter<T>[src]

Loading content...