Skip to content

Commit b6584e3

Browse files
UniqueBy::next_back: use rfind
1 parent a2aaedd commit b6584e3

File tree

1 file changed

+2
-7
lines changed

1 file changed

+2
-7
lines changed

src/unique_impl.rs

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -84,13 +84,8 @@ where
8484
F: FnMut(&I::Item) -> V,
8585
{
8686
fn next_back(&mut self) -> Option<Self::Item> {
87-
while let Some(v) = self.iter.next_back() {
88-
let key = (self.f)(&v);
89-
if self.used.insert(key, ()).is_none() {
90-
return Some(v);
91-
}
92-
}
93-
None
87+
let Self { iter, used, f } = self;
88+
iter.rfind(|v| used.insert(f(v), ()).is_none())
9489
}
9590
}
9691

0 commit comments

Comments
 (0)