Hello everybody,

I’m wondering how to collect a fixed-sized array from an iterator.

Using vectors as return type works:

```
fn main() {
let array = [1, 2, 3];
let rev : Vec<_> = array.into_iter().rev().map(|x| *x).collect();
println!("{:#?}", rev)
}
```

How to obtain a fixed size array ( like [_,3]) instead?

Ideally without copying the data or using boxed slices (https://doc.rust-lang.org/std/vec/struct.Vec.html#method.into_boxed_slice).

Given the fact that iterators are considered a zero-cost abstraction there must be a way to stay with static dispatching.

Thanks!