From f029047c036e179811a1ff7e76044828693fbb16 Mon Sep 17 00:00:00 2001 From: Pavan Kumar Sunkara Date: Sat, 13 Mar 2021 12:05:25 +0530 Subject: [PATCH] Rename NoEmptyValues to ForbidEmptyValues --- src/build/arg/debug_asserts.rs | 2 +- src/build/arg/mod.rs | 4 ++-- src/build/arg/settings.rs | 10 +++++----- src/parse/errors.rs | 2 +- src/parse/parser.rs | 2 +- src/parse/validator.rs | 4 +++- tests/empty_values.rs | 10 +++++----- tests/opts.rs | 6 +++--- 8 files changed, 21 insertions(+), 19 deletions(-) diff --git a/src/build/arg/debug_asserts.rs b/src/build/arg/debug_asserts.rs index 3daad75d..9b35c711 100644 --- a/src/build/arg/debug_asserts.rs +++ b/src/build/arg/debug_asserts.rs @@ -67,7 +67,7 @@ fn assert_app_flags(arg: &Arg) { } } - checker!(NoEmptyValues requires TakesValue); + checker!(ForbidEmptyValues requires TakesValue); checker!(RequireDelimiter requires TakesValue | UseValueDelimiter); checker!(HidePossibleValues requires TakesValue); checker!(AllowHyphenValues requires TakesValue); diff --git a/src/build/arg/mod.rs b/src/build/arg/mod.rs index 2337599b..cec5f82d 100644 --- a/src/build/arg/mod.rs +++ b/src/build/arg/mod.rs @@ -4217,9 +4217,9 @@ impl<'help> Arg<'help> { #[inline] pub fn forbid_empty_values(self, empty: bool) -> Self { if empty { - self.setting(ArgSettings::NoEmptyValues) + self.setting(ArgSettings::ForbidEmptyValues) } else { - self.unset_setting(ArgSettings::NoEmptyValues) + self.unset_setting(ArgSettings::ForbidEmptyValues) } } diff --git a/src/build/arg/settings.rs b/src/build/arg/settings.rs index ff49ec6c..4afbd850 100644 --- a/src/build/arg/settings.rs +++ b/src/build/arg/settings.rs @@ -39,7 +39,7 @@ impl_settings! { ArgSettings, ArgFlags, Required("required") => Flags::REQUIRED, MultipleOccurrences("multipleoccurrences") => Flags::MULTIPLE_OCC, MultipleValues("multiplevalues") => Flags::MULTIPLE_VALS, - NoEmptyValues("noemptyvalues") => Flags::NO_EMPTY_VALS, + ForbidEmptyValues("forbidemptyvalues") => Flags::NO_EMPTY_VALS, Hidden("hidden") => Flags::HIDDEN, TakesValue("takesvalue") => Flags::TAKES_VAL, UseValueDelimiter("usevaluedelimiter") => Flags::USE_DELIM, @@ -80,8 +80,8 @@ pub enum ArgSettings { MultipleValues, /// Allows an arg to appear multiple times MultipleOccurrences, - /// Disallows an arg from accepting empty values such as `""` - NoEmptyValues, + /// Forbids an arg from accepting empty values such as `""` + ForbidEmptyValues, /// Hides an arg from the help message Hidden, /// Allows an argument to take a value (such as `--option value`) @@ -130,8 +130,8 @@ mod test { ArgSettings::AllowHyphenValues ); assert_eq!( - "noemptyvalues".parse::().unwrap(), - ArgSettings::NoEmptyValues + "forbidemptyvalues".parse::().unwrap(), + ArgSettings::ForbidEmptyValues ); assert_eq!( "hidepossiblevalues".parse::().unwrap(), diff --git a/src/parse/errors.rs b/src/parse/errors.rs index 3800b819..c0f16fa4 100644 --- a/src/parse/errors.rs +++ b/src/parse/errors.rs @@ -116,7 +116,7 @@ pub enum ErrorKind { /// let res = App::new("prog") /// .arg(Arg::new("color") /// .setting(ArgSettings::TakesValue) - /// .setting(ArgSettings::NoEmptyValues) + /// .setting(ArgSettings::ForbidEmptyValues) /// .long("color")) /// .try_get_matches_from(vec!["prog", "--color="]); /// assert!(res.is_err()); diff --git a/src/parse/parser.rs b/src/parse/parser.rs index 250691c9..4604e7fb 100644 --- a/src/parse/parser.rs +++ b/src/parse/parser.rs @@ -1153,7 +1153,7 @@ impl<'help, 'app> Parser<'help, 'app> { // has_eq: --flag=value let mut has_eq = false; let no_val = val.is_none(); - let no_empty_vals = opt.is_set(ArgSettings::NoEmptyValues); + let no_empty_vals = opt.is_set(ArgSettings::ForbidEmptyValues); let min_vals_zero = opt.min_vals.unwrap_or(1) == 0; let require_equals = opt.is_set(ArgSettings::RequireEquals); diff --git a/src/parse/validator.rs b/src/parse/validator.rs index 515a3667..161d998c 100644 --- a/src/parse/validator.rs +++ b/src/parse/validator.rs @@ -125,7 +125,9 @@ impl<'help, 'app, 'parser> Validator<'help, 'app, 'parser> { )); } } - if arg.is_set(ArgSettings::NoEmptyValues) && val.is_empty() && matcher.contains(&arg.id) + if arg.is_set(ArgSettings::ForbidEmptyValues) + && val.is_empty() + && matcher.contains(&arg.id) { debug!("Validator::validate_arg_values: illegal empty val found"); return Err(Error::empty_value( diff --git a/tests/empty_values.rs b/tests/empty_values.rs index 6576eef4..0624f711 100644 --- a/tests/empty_values.rs +++ b/tests/empty_values.rs @@ -55,7 +55,7 @@ fn no_empty_values_with_equals() { Arg::new("config") .long("config") .takes_value(true) - .setting(ArgSettings::NoEmptyValues), + .setting(ArgSettings::ForbidEmptyValues), ) .try_get_matches_from(&["config", "--config="]); assert!(m.is_err()); @@ -66,7 +66,7 @@ fn no_empty_values_with_equals() { Arg::new("config") .short('c') .takes_value(true) - .setting(ArgSettings::NoEmptyValues), + .setting(ArgSettings::ForbidEmptyValues), ) .try_get_matches_from(&["config", "-c="]); assert!(m.is_err()); @@ -80,7 +80,7 @@ fn no_empty_values_without_equals() { Arg::new("config") .long("config") .takes_value(true) - .setting(ArgSettings::NoEmptyValues), + .setting(ArgSettings::ForbidEmptyValues), ) .try_get_matches_from(&["config", "--config"]); assert!(m.is_err()); @@ -91,7 +91,7 @@ fn no_empty_values_without_equals() { Arg::new("config") .short('c') .takes_value(true) - .setting(ArgSettings::NoEmptyValues), + .setting(ArgSettings::ForbidEmptyValues), ) .try_get_matches_from(&["config", "-c"]); assert!(m.is_err()); @@ -104,7 +104,7 @@ fn no_empty_values_without_equals_but_requires_equals() { Arg::new("config") .long("config") .takes_value(true) - .setting(ArgSettings::NoEmptyValues) + .setting(ArgSettings::ForbidEmptyValues) .setting(ArgSettings::RequireEquals), ); let m = app.clone().try_get_matches_from(&["config", "--config"]); diff --git a/tests/opts.rs b/tests/opts.rs index 94dde5d2..0f4aa78b 100644 --- a/tests/opts.rs +++ b/tests/opts.rs @@ -34,7 +34,7 @@ fn require_equals_fail() { .arg( Arg::new("cfg") .setting(ArgSettings::RequireEquals) - .setting(ArgSettings::NoEmptyValues) + .setting(ArgSettings::ForbidEmptyValues) .setting(ArgSettings::TakesValue) .long("config"), ) @@ -105,7 +105,7 @@ fn require_equals_no_empty_values_fail() { Arg::new("cfg") .setting(ArgSettings::TakesValue) .setting(ArgSettings::RequireEquals) - .setting(ArgSettings::NoEmptyValues) + .setting(ArgSettings::ForbidEmptyValues) .long("config"), ) .arg(Arg::new("some")) @@ -425,7 +425,7 @@ fn issue_665() { .arg("-v, --reroll-count=[N] 'Mark the patch series as PATCH vN'") .arg( Arg::from("--subject-prefix [Subject-Prefix] 'Use [Subject-Prefix] instead of the standard [PATCH] prefix'") - .setting(ArgSettings::NoEmptyValues) + .setting(ArgSettings::ForbidEmptyValues) ) .try_get_matches_from(vec!["test", "--subject-prefix", "-v", "2"]);