2 stable releases
1.1.0 | Apr 7, 2021 |
---|---|
1.0.0 | Nov 1, 2018 |
#1507 in Rust patterns
130,150 downloads per month
Used in 228 crates
(12 directly)
4KB
Enum variant count
This crate provides VariantCount
derive macro for enum which adds to it the VARIANT_COUNT
constant, containing count of enum variants.
The VariantCount
usage example:
#[derive(VariantCount)]
enum Test {
First(i32),
Second(Option<String>),
Third,
}
assert_eq!(Test::VARIANT_COUNT, 3);
Usage
If you're using Cargo, just add it to your Cargo.toml:
[dependencies]
variant_count = "1.1"
License
MIT
lib.rs
:
This crate provides VariantCount
derive macro for enum which adds to it the VARIANT_COUNT
constant, containing count of enum variants.
Example
extern crate variant_count;
use variant_count::VariantCount;
#[derive(VariantCount)]
enum Test {
First(i32),
Second(Option<String>),
Third,
}
assert_eq!(Test::VARIANT_COUNT, 3);
Usage
If you're using Cargo, just add it to your Cargo.toml:
[dependencies]
variant_count = "1.1"
Use VariantCount
in the derive
enum attribute.
!
Dependencies
~1.5MB
~37K SLoC