// Copyright 2018 Guillaume Pinot (@TeXitoi) // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. use clap::Clap; #[derive(Clap, Debug)] struct MakeCookie { #[clap(short)] s: String, #[clap(subcommand, parse(from_occurrences))] cmd: Command, } #[derive(Clap, Debug)] enum Command { /// Pound acorns into flour for cookie dough. Pound { acorns: u32 }, Sparkle { #[clap(short)] color: String, }, } fn main() { let opt = MakeCookie::parse(); println!("{:?}", opt); }