diff --git a/src/main.rs b/src/main.rs index f39b5f0..31d1348 100644 --- a/src/main.rs +++ b/src/main.rs @@ -43,15 +43,14 @@ mod fut { } } - pub struct Empty; - - impl Stream for Empty { - type Item = String; + pub fn map(f: F) -> Map + where + F: FnMut(String) -> T, + { + loop {} } - pub struct Map { - f: F, - } + pub struct Map(F); pub trait FnOnce1 { type Output; @@ -97,7 +96,7 @@ mod fut { } fn main() { - let bodies = fut::Empty.map(|url| FutResult(Result::Ok(url))); + let bodies = fut::map(|url| FutResult(Result::Ok(url))); bodies.for_each(|b| async { match b {