Lines Matching defs:new

16 /// - [`ValueParser::new`] for additional [`TypedValueParser`] that can be used
21 /// let mut cmd = clap::Command::new("raw")
23 /// clap::Arg::new("color")
29 /// clap::Arg::new("hostname")
31 /// .value_parser(clap::builder::NonEmptyStringValueParser::new())
36 /// clap::Arg::new("port")
95 /// let mut cmd = clap::Command::new("raw")
97 /// clap::Arg::new("env")
98 /// .value_parser(clap::builder::ValueParser::new(parse_env_var))
107 pub fn new<P>(other: P) -> Self
111 Self(ValueParserInner::Other(Box::new(other)))
123 /// let mut cmd = clap::Command::new("raw")
125 /// clap::Arg::new("download")
149 /// let mut cmd = clap::Command::new("raw")
151 /// clap::Arg::new("port")
174 /// let r = Command::new("myprog")
176 /// Arg::new("arg")
202 /// let mut cmd = clap::Command::new("raw")
204 /// clap::Arg::new("output")
212 /// assert_eq!(port, Path::new("hello.txt"));
265 /// let mut cmd = clap::Command::new("raw")
267 /// clap::Arg::new("hostname")
269 /// .value_parser(clap::builder::NonEmptyStringValueParser::new())
287 Self::new(p)
306 /// let mut cmd = clap::Command::new("raw")
308 /// clap::Arg::new("port")
322 let inner = RangedI64ValueParser::<i64>::new().range(value.start..value.end);
336 /// let mut cmd = clap::Command::new("raw")
338 /// clap::Arg::new("port")
352 let inner = RangedI64ValueParser::<i64>::new().range(value.start()..=value.end());
366 /// let mut cmd = clap::Command::new("raw")
368 /// clap::Arg::new("port")
382 let inner = RangedI64ValueParser::<i64>::new().range(value.start..);
396 /// let mut cmd = clap::Command::new("raw")
398 /// clap::Arg::new("port")
412 let inner = RangedI64ValueParser::<i64>::new().range(..value.end);
426 /// let mut cmd = clap::Command::new("raw")
428 /// clap::Arg::new("port")
442 let inner = RangedI64ValueParser::<i64>::new().range(..=value.end);
456 /// let mut cmd = clap::Command::new("raw")
458 /// clap::Arg::new("port")
472 let inner = RangedI64ValueParser::<i64>::new().range(value);
485 /// let mut cmd = clap::Command::new("raw")
487 /// clap::Arg::new("color")
520 /// let mut cmd = clap::Command::new("raw")
522 /// clap::Arg::new("color")
608 Ok(AnyValue::new(value))
618 Ok(AnyValue::new(value))
632 Box::new(self.clone())
672 /// let mut err = clap::Error::new(ErrorKind::ValueValidation)
730 /// let cmd = Command::new("mycmd")
732 /// Arg::new("flag")
736 /// BoolishValueParser::new()
762 MapValueParser::new(self, func)
778 /// let cmd = Command::new("mycmd")
780 /// Arg::new("flag")
783 /// OsStringValueParser::new()
790 /// if path.extension() != Some(OsStr::new("rs")) {
803 /// Some(Path::new("foo.rs"))
812 TryMapValueParser::new(self, func)
833 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
848 /// Useful for composing new [`TypedValueParser`]s
855 pub fn new() -> Self {
881 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
890 Self::new()
896 /// Useful for composing new [`TypedValueParser`]s
903 pub fn new() -> Self {
932 Self::new()
938 /// Useful for composing new [`TypedValueParser`]s
945 pub fn new() -> Self {
982 Self::new()
997 /// # let cmd = clap::Command::new("test");
1001 /// let mut cmd = clap::Command::new("raw")
1003 /// clap::Arg::new("color")
1004 /// .value_parser(clap::builder::EnumValueParser::<ColorChoice>::new())
1014 /// let value_parser = clap::builder::EnumValueParser::<ColorChoice>::new();
1017 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).is_err());
1018 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1019 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("always")).unwrap(), ColorChoice::Always);
1020 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("auto")).unwrap(), ColorChoice::Auto);
1021 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("never")).unwrap(), ColorChoice::Never);
1030 pub fn new() -> Self {
1087 Some(Box::new(
1097 Self::new()
1112 /// let mut cmd = clap::Command::new("raw")
1114 /// clap::Arg::new("color")
1115 /// .value_parser(clap::builder::PossibleValuesParser::new(["always", "auto", "never"]))
1129 /// # let cmd = clap::Command::new("test");
1131 /// let value_parser = clap::builder::PossibleValuesParser::new(["always", "auto", "never"]);
1132 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).is_err());
1133 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1134 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("always")).unwrap(), "always");
1135 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("auto")).unwrap(), "auto");
1136 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("never")).unwrap(), "never");
1143 pub fn new(values: impl Into<PossibleValuesParser>) -> Self {
1169 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1197 Some(Box::new(self.0.iter().cloned()))
1221 /// let mut cmd = clap::Command::new("raw")
1223 /// clap::Arg::new("port")
1240 /// # let cmd = clap::Command::new("test");
1242 /// let value_parser = clap::builder::RangedI64ValueParser::<i32>::new().range(-1..200);
1243 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).is_err());
1244 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1245 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("-200")).is_err());
1246 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("300")).is_err());
1247 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("-1")).unwrap(), -1);
1248 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("0")).unwrap(), 0);
1249 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("50")).unwrap(), 50);
1259 pub fn new() -> Self {
1353 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1409 Self::new()
1419 /// let mut cmd = clap::Command::new("raw")
1421 /// clap::Arg::new("port")
1438 /// # let cmd = clap::Command::new("test");
1440 /// let value_parser = clap::builder::RangedU64ValueParser::<u32>::new().range(0..200);
1441 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).is_err());
1442 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1443 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("-200")).is_err());
1444 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("300")).is_err());
1445 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("-1")).is_err());
1446 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("0")).unwrap(), 0);
1447 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("50")).unwrap(), 50);
1457 pub fn new() -> Self {
1551 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1605 Self::new()
1611 /// Useful for composing new [`TypedValueParser`]s
1618 pub fn new() -> Self {
1626 .map(crate::builder::PossibleValue::new)
1639 let value = if value == std::ffi::OsStr::new("true") {
1641 } else if value == std::ffi::OsStr::new("false") {
1663 Some(Box::new(Self::possible_values()))
1669 Self::new()
1683 /// let mut cmd = clap::Command::new("raw")
1685 /// clap::Arg::new("append")
1686 /// .value_parser(clap::builder::FalseyValueParser::new())
1700 /// # let cmd = clap::Command::new("test");
1702 /// let value_parser = clap::builder::FalseyValueParser::new();
1703 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).unwrap(), true);
1704 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("100")).unwrap(), true);
1705 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).unwrap(), false);
1706 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("false")).unwrap(), false);
1707 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("No")).unwrap(), false);
1708 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("oFF")).unwrap(), false);
1709 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("0")).unwrap(), false);
1717 pub fn new() -> Self {
1726 .map(|l| crate::builder::PossibleValue::new(l).hide(l != "true" && l != "false"))
1742 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1756 Some(Box::new(Self::possible_values()))
1762 Self::new()
1776 /// let mut cmd = clap::Command::new("raw")
1778 /// clap::Arg::new("append")
1779 /// .value_parser(clap::builder::BoolishValueParser::new())
1793 /// # let cmd = clap::Command::new("test");
1795 /// let value_parser = clap::builder::BoolishValueParser::new();
1796 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).is_err());
1797 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1798 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("100")).is_err());
1799 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("true")).unwrap(), true);
1800 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("Yes")).unwrap(), true);
1801 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("oN")).unwrap(), true);
1802 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("1")).unwrap(), true);
1803 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("false")).unwrap(), false);
1804 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("No")).unwrap(), false);
1805 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("oFF")).unwrap(), false);
1806 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("0")).unwrap(), false);
1814 pub fn new() -> Self {
1823 .map(|l| crate::builder::PossibleValue::new(l).hide(l != "true" && l != "false"))
1839 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1855 Some(Box::new(Self::possible_values()))
1861 Self::new()
1874 /// let mut cmd = clap::Command::new("raw")
1876 /// clap::Arg::new("append")
1877 /// .value_parser(clap::builder::NonEmptyStringValueParser::new())
1891 /// # let cmd = clap::Command::new("test");
1893 /// let value_parser = clap::builder::NonEmptyStringValueParser::new();
1894 /// assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).unwrap(), "random");
1895 /// assert!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).is_err());
1903 pub fn new() -> Self {
1928 crate::output::Usage::new(cmd).create_usage_with_title(&[]),
1937 Self::new()
1957 fn new(parser: P, func: F) -> Self {
2017 fn new(parser: P, func: F) -> Self {
2129 RangedI64ValueParser::new().range(start..=end)
2137 RangedI64ValueParser::new().range(start..=end)
2145 RangedI64ValueParser::new().range(start..=end)
2153 RangedI64ValueParser::new().range(start..=end)
2161 RangedI64ValueParser::new().range(start..=end)
2169 RangedI64ValueParser::new().range(start..=end)
2175 RangedI64ValueParser::new()
2181 RangedU64ValueParser::new()
2192 pub fn new() -> Self {
2232 EnumValueParser::<E>::new()
2246 OsStringValueParser::new()
2264 OsStringValueParser::new()
2280 _AnonymousValueParser(StringValueParser::new().map(|s| FromString::from(s)).into())
2293 _AnonymousValueParser(StringValueParser::new().map(|s| FromStr::from(&s)).into())
2309 _AnonymousValueParser(ValueParser::new(func))
2331 /// let mut cmd = clap::Command::new("raw")
2333 /// clap::Arg::new("output")
2341 /// assert_eq!(port, Path::new("file.txt"));
2368 let auto = $crate::builder::_AutoValueParser::<$name>::new();
2428 let cmd = crate::Command::new("cmd");
2431 TypedValueParser::parse_ref(&parse, &cmd, arg, std::ffi::OsStr::new("foo")).unwrap(),