diff options
Diffstat (limited to 'clap/examples/16_app_settings.rs')
-rw-r--r-- | clap/examples/16_app_settings.rs | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/clap/examples/16_app_settings.rs b/clap/examples/16_app_settings.rs deleted file mode 100644 index ab1d185..0000000 --- a/clap/examples/16_app_settings.rs +++ /dev/null @@ -1,41 +0,0 @@ -extern crate clap; - -use clap::{App, AppSettings, SubCommand}; - -fn main() { - // You can use AppSettings to change the application level behavior of clap. .setting() function - // of App struct takes AppSettings enum as argument. There is also .settings() function which - // takes slice of AppSettings enum. You can learn more about AppSettings in the documentation, - // which also has examples on each setting. - // - // This example will only show usage of one AppSettings setting. See documentation for more - // information. - - let matches = App::new("myapp") - .setting(AppSettings::SubcommandsNegateReqs) - // Negates requirement of parent command. - - .arg_from_usage("<input> 'input file to use'") - // Required positional argument called input. This - // will be only required if subcommand is not present. - - .subcommand(SubCommand::with_name("test") - .about("does some testing")) - // if program is invoked with subcommand, you do not - // need to specify the <input> argument anymore due to - // the AppSettings::SubcommandsNegateReqs setting. - - .get_matches(); - - // Calling unwrap() on "input" would not be advised here, because although it's required, - // if the user uses a subcommand, those requirements are no longer required. Hence, we should - // use some sort of 'if let' construct - if let Some(inp) = matches.value_of("input") { - println!("The input file is: {}", inp); - } - - match matches.subcommand() { - ("test", _) => println!("The 'test' subcommand was used"), - _ => unreachable!() - } -} |