From 06d3f26bcd4a0d3e8c5bb243670542ea1db70f46 Mon Sep 17 00:00:00 2001 From: Yuval Adam <_@yuv.al> Date: Wed, 6 Jul 2022 14:25:55 +0300 Subject: Implement print_sink --- src/main.rs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main.rs b/src/main.rs index c583dc9..c82d35d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -71,13 +71,18 @@ fn double>(input: S) -> impl Stream { } } +fn print_sink>(input: S) -> impl Stream { + stream! { + for await val in input { + print!("{}", val); + } + } +} + #[tokio::main] async fn main() { let number_source = NumberSource { i: 0 }; - let s = double(number_source); + let s = print_sink(double(number_source)); pin_mut!(s); // needed for iteration - - while let Some(value) = s.next().await { - println!("got {}", value); - } + s.next().await; } -- cgit v1.3.1