How to accept an async function as an argument?
问题 I would like to replicate the behavior and ergonomics of taking a closure/function as an argument much like map does: iterator.map(|x| ...) . I've noticed that some library code allows passing in async functionality, but this method doesn't allow me to pass in arguments: pub fn spawn<F, T>(future: F) -> JoinHandle<T> where F: Future<Output = T> + Send + 'static, T: Send + 'static, spawn(async { foo().await }); I'm hoping to do one of the following: iterator.map(async |x| {...}); async fn a(x: