The Option Api uses a unifying simple model, where most methods are called by
.as_mut() are used to modify the access mode.
The Iteration methods still live in the old paradigm, so
fn mut_iter(&mut self) and
fn move_iter(self) all still exist.
I propose simplify this by using the same model as the rest of the API, providing only
fn iter(self) -> Item<T>.
- Simplification of the API – iterating Option is rare, so we can afford to collapse these into one method.
EDIT: I changed my mind about this after trying to implement it: Option is ok with 3 iteration methods for consistency with other containers.