Can I specify std::iter::Map as Iter in an implementation? Map takes FnMut(Self::Item) -> B as an argument which can't be expressed as a concrete type.
There is the unstable feature type_alias_impl_trait for this kind of use-case; on stable Rust you will have to use dyn in some form unfortunately, either with a Box<dyn FnMut ...> closure type, or with a Box<dyn Iterator...> iterator type.