| Crates.io | enum-display-derive |
| lib.rs | enum-display-derive |
| version | 0.1.1 |
| created_at | 2017-02-13 08:06:07.943575+00 |
| updated_at | 2021-02-27 21:51:07.128077+00 |
| description | Display trait's custom derive for simple enums. |
| homepage | https://github.com/ihrwein/enum-display-derive |
| repository | https://github.com/ihrwein/enum-display-derive |
| max_upload_size | |
| id | 8498 |
| size | 20,593 |
This crate can derive a Display implementation for very simple enums,
like the following one:
#[macro_use]
extern crate enum_display_derive;
use std::fmt::Display;
#[derive(Display)]
enum FizzBuzz {
Fizz,
Buzz,
FizzBuzz,
Number(u64),
}
fn fb(i: u64) -> FizzBuzz {
match (i % 3, i % 5) {
(0, 0) => FizzBuzz::FizzBuzz,
(0, _) => FizzBuzz::Fizz,
(_, 0) => FizzBuzz::Buzz,
(_, _) => FizzBuzz::Number(i),
}
}
fn main() {
for i in 0..100 {
println!("{}", fb(i));
}
}
You should see the following output:
FizzBuzz
1
2
Fizz
4
Buzz
Fizz
7
...
Licensed under either of
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.`