Struct cfrp::primitives::channel::Channel [] [src]

pub struct Channel<A> where A: 'static + Send + Clone {
    // some fields omitted
}

Methods

impl<A> Channel<A> where A: 'static + Send + Clone

fn new(config: Config, source_rx: Receiver<Event<A>>, initial: A) -> Channel<A>

Trait Implementations

impl<A> Signal<A> for Channel<A> where A: 'static + Send + Clone

fn config(&self) -> Config

fn initial(&self) -> SignalType<A>

fn push_to(self: Box<Self>, target: Option<Box<Push<A>>>)

fn init(&mut self)

impl<A> SignalExt<A> for Channel<A> where A: 'static + Send + Clone

fn lift<F, B>(self, f: F) -> LiftSignal<F, A, B> where F: 'static + Send + Fn(A) -> B, B: 'static + Send + Clone

fn lift2<F, SB, B, C>(self, right: SB, f: F) -> Lift2Signal<F, A, B, C> where SB: 'static + Signal<B>, F: 'static + Send + Fn(Value<A>, Value<B>) -> C, B: 'static + Send + Clone, C: 'static + Send + Clone

fn fold<F, B>(self, initial: B, f: F) -> FoldSignal<F, A, B> where F: 'static + Send + Fn(B, A) -> B, B: 'static + Send + Clone

fn add_to(self, builder: &Builder) -> Branch<A>

fn async(self, builder: &Builder) -> Branch<A>

fn map<F, B>(self, f: F) -> LiftSignal<F, A, B> where F: 'static + Send + Fn(A) -> B, B: 'static + Send + Clone

fn zip<SB, B>(self, right: SB) -> Box<Signal<(Value<A>, Value<B>)>> where SB: 'static + Signal<B>, B: 'static + Send + Clone

fn enumerate(self) -> Box<Signal<(usize, A)>>

fn filter<F>(self, f: F) -> Box<Signal<Option<A>>> where F: 'static + Send + Fn(&A) -> bool

fn inspect<F>(self, f: F) -> Box<Signal<A>> where F: 'static + Send + Fn(&A) -> bool