Crates.io | peekaboo |
lib.rs | peekaboo |
version | 0.3.0 |
source | src |
created_at | 2022-07-03 16:50:18.11223 |
updated_at | 2022-07-08 15:39:57.929924 |
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