boolean-enums 0.4.0

Generate enums with Yes and No variants. Supports no_std and serde.
Documentation

boolean-enums

GitHub Actions Workflow Status Crates.io Version docs.rs

Convenient macro to generate enums with Yes and No variants. Supports no_std.

Useful in cases of multiple bool arguments:

use boolean_enums::gen_boolean_enum;

gen_boolean_enum!(First);
gen_boolean_enum!(Second);
gen_boolean_enum!(Third);

fn do_smth(flag1: First, flag2: Second, flag3: Third) {
    //}

fn main() {
    let first = First::Yes;
    let second = Second::No;
    let third = Third::Yes;

    do_smth(first, second, third); // compiles
    do_smth(first, third, second); // fails
}

License

This project is licensed under either of

at your option.