clap/examples/subcommand_aliases.rs
2018-04-09 11:14:28 +02:00

22 lines
619 B
Rust

#[macro_use]
extern crate structopt;
use structopt::StructOpt;
use structopt::clap::AppSettings;
#[derive(StructOpt, Debug)]
// https://docs.rs/clap/2/clap/enum.AppSettings.html#variant.InferSubcommands
#[structopt(raw(setting = "AppSettings::InferSubcommands"))]
enum Opt {
// https://docs.rs/clap/2/clap/struct.App.html#method.alias
#[structopt(name = "foo", alias = "foobar")]
Foo,
// https://docs.rs/clap/2/clap/struct.App.html#method.aliases
#[structopt(name = "bar", raw(aliases = r#"&["baz", "fizz"]"#))]
Bar,
}
fn main() {
let opt = Opt::from_args();
println!("{:?}", opt);
}