commit | fdd4814e385f511cc24577e95d70ea4b991080f6 | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <[email protected]> | Wed Aug 28 23:12:56 2024 +0000 |
committer | Android Build Coastguard Worker <[email protected]> | Wed Aug 28 23:12:56 2024 +0000 |
tree | 43f28f10d8ed3b8be61b44f2d57f00a162feaeec | |
parent | d4c3e1b1ebde0ee12bac1e5437d295a1659b548a [diff] | |
parent | 35896f4dea3b52fd017bf84b3cd86c9054091080 [diff] |
Snap for 12289667 from 35896f4dea3b52fd017bf84b3cd86c9054091080 to 24Q4-release Change-Id: I02c481c557bbc137720418c22b733f01564a2648
Extra iterator adaptors, functions and macros.
Please read the API documentation here.
How to use with Cargo:
[dependencies] itertools = "0.10.5"
How to use in your crate:
use itertools::Itertools;
For new features, please first consider filing a PR to rust-lang/rust, adding your new feature to the Iterator
trait of the standard library, if you believe it is reasonable. If it isn‘t accepted there, proposing it for inclusion in itertools
is a good idea. The reason for doing is this is so that we avoid future breakage as with .flatten()
. However, if your feature involves heap allocation, such as storing elements in a Vec<T>
, then it can’t be accepted into libcore
, and you should propose it for itertools
directly instead.
Dual-licensed to be compatible with the Rust project.
Licensed under the Apache License, Version 2.0 https://www.apache.org/licenses/LICENSE-2.0 or the MIT license https://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.