From ea7aea8efcf9b944773370ebb53feba91d3debe3 Mon Sep 17 00:00:00 2001
From: Manuel Thalmann <m@nuth.ch>
Date: Thu, 10 Apr 2025 08:15:39 +0200
Subject: [PATCH] Filter the stream

---
 async-streams/src/main.rs | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/async-streams/src/main.rs b/async-streams/src/main.rs
index 24d1912..3f57e76 100644
--- a/async-streams/src/main.rs
+++ b/async-streams/src/main.rs
@@ -2,12 +2,15 @@ use trpl::StreamExt;
 
 fn main() {
     trpl::run(async {
-        let values = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
-        let iter = values.iter().map(|n| n * 2);
-        let mut stream = trpl::stream_from_iter(iter);
+        let values = 1..101;
+        let iter = values.map(|n| n * 2);
+        let stream = trpl::stream_from_iter(iter);
 
-        while let Some(value) = stream.next().await {
+        let mut filtered =
+            stream.filter(|value| value % 3 == 0 || value % 5 == 0);
+
+        while let Some(value) = filtered.next().await {
             println!("The value was: {value}");
         }
     });
-}
\ No newline at end of file
+}