diff options
| author | Josh Stone <jistone@redhat.com> | 2017-06-20 15:25:51 -0700 |
|---|---|---|
| committer | Josh Stone <jistone@redhat.com> | 2017-06-20 15:25:51 -0700 |
| commit | b4038977a39f7c5bfa76cccf586930ec57befbad (patch) | |
| tree | b93b87a762f7ea17657804ec3653b374bb0c7d64 /src/liballoc | |
| parent | 29bce6e220f6fd2292d13d65fe503af7bf4852b7 (diff) | |
| download | rust-b4038977a39f7c5bfa76cccf586930ec57befbad.tar.gz rust-b4038977a39f7c5bfa76cccf586930ec57befbad.zip | |
Add `Iterator::for_each`
This works like a `for` loop in functional style, applying a closure to every item in the `Iterator`. It doesn't allow `break`/`continue` like a `for` loop, nor any other control flow outside the closure, but it may be a more legible style for tying up the end of a long iterator chain. This was tried before in #14911, but nobody made the case for using it with longer iterators. There was also `Iterator::advance` at that time which was more capable than `for_each`, but that no longer exists. The `itertools` crate has `Itertools::foreach` with the same behavior, but thankfully the names won't collide. The `rayon` crate also has a `ParallelIterator::for_each` where simple `for` loops aren't possible. > I really wish we had `for_each` on seq iterators. Having to use a > dummy operation is annoying. - [@nikomatsakis][1] [1]: https://github.com/nikomatsakis/rayon/pull/367#issuecomment-308455185
Diffstat (limited to 'src/liballoc')
0 files changed, 0 insertions, 0 deletions
