diff options
| author | Tshepang Lekhonkhobe <tshepang@gmail.com> | 2016-04-28 23:51:42 +0200 |
|---|---|---|
| committer | Tshepang Lekhonkhobe <tshepang@gmail.com> | 2016-05-11 18:31:51 +0200 |
| commit | db26b3f5bcc49768a04867d5a21906f2bca4aa4a (patch) | |
| tree | 596b6a7650ff743544c78d100a63353f7e95b727 /src | |
| parent | c0495417416c8e0687bc6a997507c403627f6568 (diff) | |
| download | rust-db26b3f5bcc49768a04867d5a21906f2bca4aa4a.tar.gz rust-db26b3f5bcc49768a04867d5a21906f2bca4aa4a.zip | |
doc: some `peek` improvements
Diffstat (limited to 'src')
| -rw-r--r-- | src/libcore/iter/mod.rs | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/libcore/iter/mod.rs b/src/libcore/iter/mod.rs index 17f7c0a773e..6ad905b6b26 100644 --- a/src/libcore/iter/mod.rs +++ b/src/libcore/iter/mod.rs @@ -1048,17 +1048,15 @@ impl<I: ExactSizeIterator> ExactSizeIterator for Peekable<I> {} impl<I: Iterator> Peekable<I> { /// Returns a reference to the next() value without advancing the iterator. /// - /// The `peek()` method will return the value that a call to [`next()`] would - /// return, but does not advance the iterator. Like [`next()`], if there is - /// a value, it's wrapped in a `Some(T)`, but if the iterator is over, it - /// will return `None`. + /// Like [`next()`], if there is a value, it is wrapped in a `Some(T)`. + /// But if the iteration is over, `None` is returned. /// /// [`next()`]: trait.Iterator.html#tymethod.next /// - /// Because `peek()` returns reference, and many iterators iterate over - /// references, this leads to a possibly confusing situation where the + /// Because `peek()` returns a reference, and many iterators iterate over + /// references, there can be a possibly confusing situation where the /// return value is a double reference. You can see this effect in the - /// examples below, with `&&i32`. + /// examples below. /// /// # Examples /// @@ -1075,13 +1073,13 @@ impl<I: Iterator> Peekable<I> { /// /// assert_eq!(iter.next(), Some(&2)); /// - /// // we can peek() multiple times, the iterator won't advance + /// // The iterator does not advance even if we `peek` multiple times /// assert_eq!(iter.peek(), Some(&&3)); /// assert_eq!(iter.peek(), Some(&&3)); /// /// assert_eq!(iter.next(), Some(&3)); /// - /// // after the iterator is finished, so is peek() + /// // After the iterator is finished, so is `peek()` /// assert_eq!(iter.peek(), None); /// assert_eq!(iter.next(), None); /// ``` @@ -1113,10 +1111,10 @@ impl<I: Iterator> Peekable<I> { /// /// let mut iter = xs.iter().peekable(); /// - /// // there are still elements to iterate over + /// // There are still elements to iterate over /// assert_eq!(iter.is_empty(), false); /// - /// // let's consume the iterator + /// // Let's consume the iterator /// iter.next(); /// iter.next(); /// iter.next(); |
