| commit | 05a4a94c82dc36af26339b9447a2446f28b9ae04 | [log] [tgz] | 
|---|---|---|
| author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Tue May 10 07:05:16 2022 +0000 | 
| committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Tue May 10 07:05:16 2022 +0000 | 
| tree | d7d800f84b0d4ccd703059529235b632ba6bc92c | |
| parent | 8aed7fc0b8182c84d02547386e934bef59177735 [diff] | |
| parent | 9809c901b8737f6d3e2a91fadf77fdf445620553 [diff] | 
Snap for 8564071 from 9809c901b8737f6d3e2a91fadf77fdf445620553 to mainline-adbd-release Change-Id: I902e6e4089bc7bd137c2f39d3e8f5216da7cc189
Extra iterator adaptors, functions and macros.
Please read the API documentation here.
How to use with Cargo:
[dependencies] itertools = "0.10.2"
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.