2 个不稳定版本
使用旧的 Rust 2015
0.2.0 | 2018 年 4 月 16 日 |
---|---|
0.1.0 | 2018 年 4 月 8 日 |
在 #nth 中排名 12
每月下载量 77 次
在 3 个crate中(通过 lexer)使用
9KB
81 行
peek-nth
一个迭代器适配器,允许您高效地查看迭代器的第 n 个元素。
中间值会被缓存,并且尽可能避免堆分配。
安装
首先,将 peek-nth
添加到您的 Cargo.toml
依赖项部分
[dependencies]
peek-nth = "0.2"
接下来,将以下代码片段添加到您的crate入口点(lib.rs
或 main.rs
)
extern crate peek_nth;
用法
extern crate peek_nth;
use peek_nth::IteratorExt;
fn main() {
let mut iter = "Hello, world!".chars().peekable_nth();
assert_eq!(iter.peek_nth(4), Some(&'o')); // Cache Miss
assert_eq!(iter.peek_nth(3), Some(&'l')); // Cache Hit
assert_eq!(iter.peek_nth(2), Some(&'l')); // Cache Hit
assert_eq!(iter.peek_nth(1), Some(&'e')); // Cache Hit
assert_eq!(iter.peek_nth(0), Some(&'H')); // Cache Hit
assert_eq!(iter.peek_nth(7), Some(&'w')); // Cache Miss
assert_eq!(iter.collect::<String>(), "Hello, world!");
}
许可证
根据您的选择,许可协议为以下之一
- Apache 许可证 2.0 版(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证(LICENSE-MIT 或 http://opensource.org/licenses/MIT)
。
贡献
除非您明确表示,否则根据 Apache-2.0 许可证定义,您提交的任何有意包含在作品中的贡献,将根据上述方式双重许可,不附加任何额外条款或条件。
依赖关系
~125KB