Crates.io | find_all |
lib.rs | find_all |
version | 2.0.0 |
source | src |
created_at | 2022-06-27 09:59:34.876914 |
updated_at | 2022-06-29 17:58:30.903198 |
description | A (nearly) identical alternative for `Iterator::find` which returns an `Option |
homepage | |
repository | https://github.com/nectariner/find_all |
max_upload_size | |
id | 614042 |
size | 4,256 |
find_all
is capable of finding all indexes of elements where a given predicate is met and therefore aims to be a simple alternative with (nearly) identical interface to the find
method (this difference being returning an Option<Vec<usize>>
instead of Option<usize>
)
use find_all::FindAll;
let test_data = [1, 2, 3, 4, 1, 1, 1, 1];
let indexes = test_data.iter().find_all(|num: &&i32| **num == 9);
assert_eq!(indexes, None);
let indexes = test_data.iter().find_all(|num: &&i32| **num == 1);
assert_eq!(indexes, Some(vec![0,4,5,6,7]));
License: GPL-3.0-only