Skip to content

Commit

Permalink
Rollup merge of rust-lang#49353 - chisophugis:patch-1, r=Mark-Simulacrum
Browse files Browse the repository at this point in the history
Fix confusing doc for `scan`

The comment "the value passed on to the next iteration" confused me since it sounded more like what Haskell's [scanl](http://hackage.haskell.org/package/base-4.11.0.0/docs/Prelude.html#v:scanl) does where the closure's return value serves as both the "yielded value" *and* the new value of the "state".

I tried changing the example to make it clear that the closure's return value is decoupled from the state argument.
  • Loading branch information
kennytm committed Mar 26, 2018
2 parents ca521d3 + f198b0a commit 6fe9ce2
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/libcore/iter/iterator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -974,13 +974,13 @@ pub trait Iterator {
/// // each iteration, we'll multiply the state by the element
/// *state = *state * x;
///
/// // the value passed on to the next iteration
/// Some(*state)
/// // then, we'll yield the negation of the state
/// Some(-*state)
/// });
///
/// assert_eq!(iter.next(), Some(1));
/// assert_eq!(iter.next(), Some(2));
/// assert_eq!(iter.next(), Some(6));
/// assert_eq!(iter.next(), Some(-1));
/// assert_eq!(iter.next(), Some(-2));
/// assert_eq!(iter.next(), Some(-6));
/// assert_eq!(iter.next(), None);
/// ```
#[inline]
Expand Down

0 comments on commit 6fe9ce2

Please sign in to comment.