| //! How to use `arg_enum!` with `StructOpt`. | |
| use clap::arg_enum; | |
| use structopt::StructOpt; | |
| arg_enum! { | |
| #[derive(Debug)] | |
| enum Baz { | |
| Foo, | |
| Bar, | |
| FooBar | |
| } | |
| } | |
| #[derive(StructOpt, Debug)] | |
| struct Opt { | |
| /// Important argument. | |
| #[structopt(possible_values = &Baz::variants(), case_insensitive = true)] | |
| i: Baz, | |
| } | |
| fn main() { | |
| let opt = Opt::from_args(); | |
| println!("{:?}", opt); | |
| } |