2 stable releases
1.1.0 | Apr 7, 2021 |
---|---|
1.0.0 | Nov 1, 2018 |
#1681 in Rust patterns
86,871 downloads per month
Used in 229 crates
(13 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
~33K SLoC