11 releases

Uses new Rust 2024

0.2.3 May 7, 2025
0.2.2 May 6, 2025
0.2.0 Mar 29, 2025
0.1.6 Jan 25, 2025
0.1.4 Dec 27, 2024

#7 in #unit-variant

Download history 7/week @ 2025-03-17 91/week @ 2025-03-24 35/week @ 2025-03-31 4/week @ 2025-04-07 1/week @ 2025-04-14 4/week @ 2025-04-28 388/week @ 2025-05-05 139/week @ 2025-05-12 5/week @ 2025-05-19 10/week @ 2025-06-16 15/week @ 2025-06-23 42/week @ 2025-06-30

67 downloads per month
Used in wopt

MIT license

9KB
144 lines

enum-unit

Crate

Description

Generates unit-variant enums from existing enums.

Example

use enum_unit::*;

#[derive(EnumUnit)]
enum Example {
    A(i16),
    B { id: u8 },
}

fn main() {
    let a = Example::A(-420);
    assert_eq!(ExampleUnit::A, a.into());

    let b = Example::B { id: 69 };
    assert_eq!(ExampleUnit::B, b.into());
}

Optional Features

Name Description
bitflags Units have bitflag functionality.
serde Units implement Serialize and Deserialize.
full bitflags + serde

Dependencies

~0.6–1.1MB
~21K SLoC