Advertisement
Guest User

Untitled

a guest
Nov 7th, 2022
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rust 1.27 KB | None | 0 0
  1. extern crate clap;
  2. use clap::{Arg, ArgAction, Command};
  3.  
  4. fn main() {
  5.     // First test (from docs: https://docs.rs/clap/4.0.19/clap/parser/struct.ArgMatches.html#examples-10)
  6.  
  7.     let mut cmd = Command::new("myapp")
  8.     .arg(Arg::new("output")
  9.         .action(ArgAction::Set));
  10.  
  11.     let m = cmd
  12.         .try_get_matches_from_mut(vec!["myapp", "something"])
  13.         .unwrap();
  14.     assert!(m.args_present());
  15.  
  16.     let m = cmd
  17.         .try_get_matches_from_mut(vec!["myapp"])
  18.         .unwrap();
  19.     assert!(! m.args_present());
  20.  
  21.     println!("Passed first tests!");
  22.  
  23.     // Second test
  24.  
  25.     let mut cmd = Command::new("myapp")
  26.                         .arg(Arg::new("A")
  27.                             .action(ArgAction::Set)
  28.                             .num_args(1)
  29.                         )
  30.                         .arg(Arg::new("B")
  31.                             .short('s')
  32.                             .action(ArgAction::SetTrue)
  33.                             .num_args(0)
  34.                         );
  35.  
  36.     let m = cmd
  37.         .try_get_matches_from_mut(vec!["myapp", "something"])
  38.         .unwrap();
  39.     assert!(m.args_present());
  40.  
  41.     let m = cmd
  42.         .try_get_matches_from_mut(vec!["myapp"])
  43.         .unwrap();
  44.     assert!(! m.args_present());
  45.  
  46.     println!("Pa
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement