Skip to content

Commit a5c8e41

Browse files
committed
Simplify iterator logic for Fuse
1 parent 6790b0e commit a5c8e41

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

src/libcore/iter.rs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2197,13 +2197,11 @@ impl<I> Iterator for Fuse<I> where I: Iterator {
21972197
if self.done {
21982198
None
21992199
} else {
2200-
match self.iter.next() {
2201-
None => {
2202-
self.done = true;
2203-
None
2204-
}
2205-
x => x
2200+
let next = self.iter.next();
2201+
if next.is_none() {
2202+
self.done = true;
22062203
}
2204+
next
22072205
}
22082206
}
22092207

@@ -2224,13 +2222,11 @@ impl<I> DoubleEndedIterator for Fuse<I> where I: DoubleEndedIterator {
22242222
if self.done {
22252223
None
22262224
} else {
2227-
match self.iter.next_back() {
2228-
None => {
2229-
self.done = true;
2230-
None
2231-
}
2232-
x => x
2225+
let next = self.iter.next_back();
2226+
if next.is_none() {
2227+
self.done = true;
22332228
}
2229+
next
22342230
}
22352231
}
22362232
}

0 commit comments

Comments
 (0)