129次发布
0.13.0 | 2024年5月16日 |
---|---|
0.12.1 | 2024年1月29日 |
0.12.0 | 2023年11月14日 |
0.11.0 | 2023年6月22日 |
0.0.3 | 2014年11月29日 |
#4 in Rust模式
17,121,116 每月下载量
在 24,362 个crate中使用 (5,878 直接使用)
420KB
8K SLoC
Itertools
额外的迭代器适配器、函数和宏。
请在此处阅读API文档。
如何与Cargo一起使用
[dependencies]
itertools = "0.13.0"
如何在您的crate中使用
use itertools::Itertools;
如何贡献
如果您不确定要做什么,请尝试检查 需要帮助 标签。
请参阅我们的 CONTRIBUTING.md 以获取详细指南。
许可
双许可以与Rust项目兼容。
在您的选择下,根据Apache许可证2.0版本 https://www.apache.org/licenses/LICENSE-2.0 或MIT许可证 https://opensource.org/licenses/MIT 许可,此文件可能无法复制、修改或分发,除非符合那些条款。
lib.rs
:
额外的迭代器适配器、函数和宏。
要使用此crate中的方法扩展Iterator
,导入Itertools
trait
use itertools::Itertools;
现在,所有迭代器都可用新方法,如 interleave
use itertools::Itertools;
let it = (1..3).interleave(vec![-1, -2]);
itertools::assert_equal(it, vec![1, -1, 2, -2]);
大多数迭代器方法也作为函数提供(好处是它们使用 IntoIterator
转换参数)
use itertools::interleave;
for elt in interleave(&[1, 2, 3], &[2, 3, 4]) {
/* loop body */
}
crate功能
use_std
- 默认启用。
- 禁用以使用
#![no_std]
编译itertools。这将禁用所有依赖于分配(请参阅use_alloc
功能)和散列映射(如unique
、counts
、into_grouping_map
等)的项目。
use_alloc
- 默认启用。
- 启用所有依赖分配的项目(如
chunk_by
、kmerge
、join
以及更多)。
Rust 版本
本版本的 itertools 需要 Rust 1.43.1 或更高版本。