random-branch

Crates.iorandom-branch
lib.rsrandom-branch
version0.1.1
sourcesrc
created_at2021-04-07 18:20:00.880681
updated_at2021-04-08 17:27:07.529665
descriptionProvides a macro to select a random branch like match
homepage
repositoryhttps://github.com/cryptjar/random-branch
max_upload_size
id380502
size23,375
(Cryptjar)

documentation

README

Random Branch

Crates.io Documentation

Provides a macro to select a random branch.

This crate provides the branch and branch_using macro, which will execute randomly one of the given expressions.

It is maybe best visualized by the following example:

branch!(
    println!("First line."),
    println!("Second line?"),
    println!("Third line!"),
);

This will be turned into something similar to this:

match rand::thread_rng().gen_range(0..3) {
    0 => println!("First line."),
    1 => println!("Second line?"),
    2 => println!("Third line!"),
    _ => unreachable!(),
}

For more details see branch and branch_using. The basic difference between them is, that branch uses rand::thread_rng() whereas branch_using uses the the given rand::Rng.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 13

cargo fmt