#values #enums #derive-debug #clone #copy #helping #enumerate

enumerable

A library helping you to enumerate all possible values of a type

1 unstable release

new 0.1.0 Apr 8, 2024

#626 in Rust patterns

Download history 92/week @ 2024-04-03

92 downloads per month

MIT license

12KB
196 lines

enumerable

Enumerate all possible values of a type.

Guide

use enumerable::Enumerable;

#[derive(Debug, Copy, Clone, Enumerable)]
enum Food {
    Apple,
    Banana,
    Carrot,
    Donut,
}

#[derive(Debug, Copy, Clone, Enumerable)]
struct Meal {
    alice_eats: Food,
    bob_eats: Option<Food>,
    at_home: bool,
}

fn main() {
    for meal in Meal::enumerator() {
        println!("{:?}", meal);
    }
}

See the documentation for more information.

See the examples for more examples.

Dependencies

~330–780KB
~19K SLoC