pub trait LendingIterator { type ItemValue; // Required method fn next(&mut self) -> Option<&Self::ItemValue>; }
This should be rust GAT iterator. But it does not exists yet.