Is the `iter::` needed? (You might be able to change `wild` to `fn wild<'a>() -> &'a Pat` to be able to write `wild::<'a>()` here instead of the closure return type. maybe.)