2 ms·
The problem with &T is that you can't make one to just-past-the-end of an array. If you look at the implementation of slice::Iter, it stores a (cursor, end) po
by ridiculous_fish 5y ago
The problem with &T is that you can't make one to just-past-the-end of an array.
If you look at the implementation of slice::Iter, it stores a (cursor, end) pointer pair, but there's no way to say "this is a non-null const pointer" so it casts the cursor pointer to *mut.
https://doc.rust-lang.org/src/core/slice/iter.rs.html#67 https://doc.rust-lang.org/src/core/slice/iter.rs.html#67