We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
Unique::next
find_map
1 parent b6584e3 commit 1abaf11Copy full SHA for 1abaf11
src/unique_impl.rs
@@ -105,14 +105,15 @@ where
105
type Item = I::Item;
106
107
fn next(&mut self) -> Option<Self::Item> {
108
- while let Some(v) = self.iter.iter.next() {
109
- if let Entry::Vacant(entry) = self.iter.used.entry(v) {
+ let UniqueBy { iter, used, .. } = &mut self.iter;
+ iter.find_map(|v| {
110
+ if let Entry::Vacant(entry) = used.entry(v) {
111
let elt = entry.key().clone();
112
entry.insert(());
113
return Some(elt);
114
}
- }
115
- None
+ None
116
+ })
117
118
119
#[inline]
0 commit comments