pub fn filter<I, F>(predicate: F) -> Pipe<I, I>where F: Fn(&I) -> bool + Send + Sync + Clone + 'static, I: Send + 'static,
Create a pipe that filters elements based on the predicate