2 stable releases
1.1.0 | Apr 7, 2021 |
---|---|
1.0.0 | Nov 1, 2018 |
#1604 in Rust patterns
127,958 downloads per month
Used in 227 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
~35K SLoC