It should be noted that with the new ranges (std::range) that recently was added the range is no longer the iterator, and instead implements IntoIterator. Though the desugaring will first be changed to use them in a future edition. https://lobste.rs/c/hnyobz