| Crates.io | kindness |
| lib.rs | kindness |
| version | 0.5.0 |
| created_at | 2022-11-16 15:11:52.600727+00 |
| updated_at | 2025-02-07 09:21:59.488565+00 |
| description | Methods for returning random elements from an iterator. |
| homepage | |
| repository | https://github.com/wainwrightmark/kindness |
| max_upload_size | |
| id | 716438 |
| size | 126,256 |
Methods for choosing random elements from an iterator.
Includes choose_item(), choose_max(), choose_max_by(), choose_max_by_key(), choose_min(), choose_min_by(), choose_min_by_key()
no_std by default. The std feature unlocks the choose_unique() and choose_unique_by_key() methods.
The name of the crate is a pun. "Random max of kindness". I'm sorry.
This crate works with Cargo with a Cargo.toml like:
[dependencies]
kindness = "0.5.0"
rand = "0.9.0"
use kindness::*;
use rand::SeedableRng;
fn main() {
let mut rng = rand::rngs::StdRng::seed_from_u64(123);
let m =[3,2,1,2,3].iter().choose_max(&mut rng).unwrap();
assert_eq!(*m, 3)
}
Contributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change.
Check out the Contributing section in the docs for more info.
This project is proudly licensed under the MIT license (LICENSE or http://opensource.org/licenses/MIT).
kindness can be distributed according to the MIT license. Contributions
will be accepted under the same license.