fn main() { | |
let cmd = clap::Command::new("cargo") | |
.bin_name("cargo") | |
.subcommand_required(true) | |
.subcommand( | |
clap::command!("example").arg( | |
clap::arg!(--"manifest-path" <PATH>) | |
.value_parser(clap::value_parser!(std::path::PathBuf)), | |
), | |
); | |
let matches = cmd.get_matches(); | |
let matches = match matches.subcommand() { | |
Some(("example", matches)) => matches, | |
_ => unreachable!("clap should ensure we don't get here"), | |
}; | |
let manifest_path = matches.get_one::<std::path::PathBuf>("manifest-path"); | |
println!("{:?}", manifest_path); | |
} |