rxrs 0.2.0-beta1

Reactive Extensions for Rust
rxrs-0.2.0-beta1 doesn't have any documentation.

🌱 WIP: rewriting everything ...

    use rxrs::*;

    #[test]
    pub fn greet()
    {
        let output = RefCell::new(String::new());

        let subj = Rc::new(Subject::<NO, i32>::new());

        let evens: impl Observable<NO, Val<String>> = subj.clone()
            .filter(|v:&_| v%2 == 0 )
            .take(4)
            .map(|v:&_| format!("*{}", v));

        evens.sub(
            |v: String    | output.borrow_mut().push_str(&v),
            |e: Option<&_>| output.borrow_mut().push_str("ok")
        );

        for i in 0..10 {
            subj.next(i);
        }

        assert_eq!("*0*2*4*6ok", &*output.borrow());
    }

src
├── act.rs
├── act_helpers.rs
├── fac
│   ├── mod.rs
│   ├── of.rs
│   └── timer.rs
├── lib.rs
├── observables.rs
├── op
│   ├── filter.rs
│   ├── map.rs
│   ├── mod.rs
│   ├── take.rs
│   └── until.rs
├── scheduler
│   ├── current_thread_scheduler.rs
│   ├── event_loop_scheduler.rs
│   ├── mod.rs
│   └── new_thread_scheduler.rs
├── subject
│   ├── behavior_subject.rs
│   ├── mod.rs
│   └── subject.rs
├── sync
│   ├── mod.rs
│   └── re_spin_lock.rs
├── unsub.rs
└── util
    ├── alias.rs
    ├── any_send_sync.rs
    ├── by.rs
    ├── clones.rs
    ├── mod.rs
    └── yesno.rs