added empty() to Peekable
This commit is contained in:
parent
f0541d5e94
commit
901dc2c15e
1 changed files with 15 additions and 1 deletions
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2013 The Rust Project Developers. See the COPYRIGHT
|
||||
// Copyright 2013-2014 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
|
|
@ -1362,6 +1362,12 @@ impl<'a, A, T: Iterator<A>> Peekable<A, T> {
|
|||
None => None,
|
||||
}
|
||||
}
|
||||
|
||||
/// Check whether peekable iterator is empty or not.
|
||||
#[inline]
|
||||
pub fn empty(&mut self) -> bool {
|
||||
self.peek().is_some()
|
||||
}
|
||||
}
|
||||
|
||||
/// An iterator which rejects elements while `predicate` is true
|
||||
|
|
@ -2923,4 +2929,12 @@ mod tests {
|
|||
ys.mut_iter().reverse_();
|
||||
assert_eq!(ys, [5, 4, 3, 2, 1]);
|
||||
}
|
||||
|
||||
fn test_peekable_empty() {
|
||||
let a = [1];
|
||||
let mut it = a.iter().peekable();
|
||||
assert!( !it.empty() );
|
||||
it.next();
|
||||
assert!( it.empty() );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue