diff options
| author | Josh Stone <jistone@redhat.com> | 2019-07-11 13:14:09 -0700 |
|---|---|---|
| committer | Josh Stone <jistone@redhat.com> | 2019-08-12 15:03:44 -0700 |
| commit | 40ecbc7b7d1e78d1fac9e352ac9e9e843231cd37 (patch) | |
| tree | 0728787d7fc853f56d59f23cb14d53bee50183b4 | |
| parent | 7539fc69d5b75f35d97fe98ba02b8a52f5617088 (diff) | |
| download | rust-40ecbc7b7d1e78d1fac9e352ac9e9e843231cd37.tar.gz rust-40ecbc7b7d1e78d1fac9e352ac9e9e843231cd37.zip | |
Avoid closures in OnceWith and Successors
| -rw-r--r-- | src/libcore/iter/sources.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/libcore/iter/sources.rs b/src/libcore/iter/sources.rs index 70a3b70c180..183176005ed 100644 --- a/src/libcore/iter/sources.rs +++ b/src/libcore/iter/sources.rs @@ -394,7 +394,8 @@ impl<A, F: FnOnce() -> A> Iterator for OnceWith<F> { #[inline] fn next(&mut self) -> Option<A> { - self.gen.take().map(|f| f()) + let f = self.gen.take()?; + Some(f()) } #[inline] @@ -608,10 +609,9 @@ impl<T, F> Iterator for Successors<T, F> #[inline] fn next(&mut self) -> Option<Self::Item> { - self.next.take().map(|item| { - self.next = (self.succ)(&item); - item - }) + let item = self.next.take()?; + self.next = (self.succ)(&item); + Some(item) } #[inline] |
