| Crates.io | peekaboo |
| lib.rs | peekaboo |
| version | 0.3.0 |
| created_at | 2022-07-03 16:50:18.11223+00 |
| updated_at | 2022-07-08 15:39:57.929924+00 |
| description | Peekable iterator that allows to peek the next `N` elements without consuming them. |
| homepage | |
| repository | https://github.com/annieversary/peekaboo |
| max_upload_size | |
| id | 618434 |
| size | 47,437 |
Peekable iterator that allows to peek the next N elements without consuming them.
It's no_std compatible by default. It also doesn't perform any allocations.
Basic usage:
let xs = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// create an iterator that allows us to peek at the next 4 element
let mut iter = xs.iter().peekable_n::<4>();
// peek() lets us see into the future
assert_eq!(iter.peek::<1>(), Some(&&1));
assert_eq!(iter.peek::<3>(), Some(&&3));
// the iterator will not advance until we call `next`
assert_eq!(iter.next(), Some(&1));
assert_eq!(iter.next(), Some(&2));
Run cargo add peekaboo (if using a Rust version over 1.62), or manually add
peekaboo = "0.3.0"
to your Cargo.toml