use rxr::subscribe::{Subscriber, Subscription, SubscriptionHandle, UnsubscribeLogic};
use rxr::{Observable, Observer, Subscribeable};
fn main() {
let mut emit_10_observable = Observable::new(|mut subscriber| {
let mut i = 1;
while i <= 10 {
subscriber.next(i);
i += 1;
}
subscriber.complete();
Subscription::new(UnsubscribeLogic::Nil, SubscriptionHandle::Nil)
});
let mut observer = Subscriber::on_next(|v| println!("Emitted {}", v));
observer.on_complete(|| println!("Completed"));
emit_10_observable.subscribe(observer);
println!("Custom Observable finished emmiting")
}