another_rxrust/observables/
repeat.rs

1use crate::prelude::*;
2
3pub fn repeat<'a, Item>(x: Item) -> Observable<'a, Item>
4where
5  Item: Clone + Send + Sync,
6{
7  Observable::create(move |s| {
8    while s.is_subscribed() {
9      s.next(x.clone());
10    }
11  })
12}
13
14#[cfg(test)]
15mod test {
16  use crate::prelude::*;
17
18  #[test]
19  fn basic() {
20    observables::repeat("abc".to_owned()).take(5).subscribe(
21      print_next_fmt!("{}"),
22      print_error!(),
23      print_complete!(),
24    );
25  }
26}