| commit | 316e3c7f619d760cfeed362346918150b20a6bfd | [log] [tgz] |
|---|---|---|
| author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Oct 21 03:15:21 2023 +0000 |
| committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Oct 21 03:15:21 2023 +0000 |
| tree | 112d7086a79dc79a19844efeca15a2ce0140305c | |
| parent | 8df1358bc32e56412532cab4130cfb107ab49a47 [diff] | |
| parent | 8139fb107a8cb8c8f39970995c914ee922a51dfa [diff] |
Snap for 10985023 from 8139fb107a8cb8c8f39970995c914ee922a51dfa to 24Q1-release Change-Id: I3b272a7a7be9d3f7c19a90b6ffd6c65b3fd7c8e3
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.