peeknth
An iterator adapter for peeking multiple elements ahead or behind in a Rust iterator.
✨ Features
- 🔭 Peek N elements ahead (
peek_nth(n)) - 🔁 Peek from both ends with double-ended iterators (
peek_front,peek_back) - 🎯 Range-based peeking (
peek_range(start..end)) - ⚡ Lightweight adapters with feature flags (
peekn,peekdn,peekde) - 🧩 Implements Iterator, so compatible with .map(), .filter(), etc.
🔧 Feature Flags
| Feature | Description |
|---|---|
peekn |
Basic N-step forward peek |
peekdn |
Double-ended peek with front/back buffers |
peekde |
Lightweight bidirectional peek (1 element) |
all |
Enables all of the above |
You can control features in Cargo.toml like:
= { = "0.2", = ["peekdn"] }
🚀 Usage
Forward peek (peekn)
use peekn;
let mut iter = peekn;
assert_eq!;
assert_eq!;
Double-ended peek (peekdn)
use peekdn;
let mut iter = peekdn;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
Lightweight peek (peekablede)
use peekablede;
let mut iter = peekablede;
assert_eq!;
assert_eq!;
Peek a range
use peekn;
let mut iter = peekn;
let values: = iter.peek_range.cloned.collect;
assert_eq!;
📦 Crate Info
-
License: MIT OR Apache-2.0
-
Repository: GitHub
🔖 License
This project is dual-licensed under either:
- MIT
- Apache-2.0
You may choose the license that best suits your needs.