Struct FalseyValueParser

struct FalseyValueParser { ... }

Parse false-like string values, everything else is true

See also:

Example

Usage:

# use clap_builder as clap;
let mut cmd = clap::Command::new("raw")
    .arg(
        clap::Arg::new("append")
            .value_parser(clap::builder::FalseyValueParser::new())
            .required(true)
    );

let m = cmd.try_get_matches_from_mut(["cmd", "true"]).unwrap();
let port: bool = *m.get_one("append")
    .expect("required");
assert_eq!(port, true);

Semantics:

# use clap_builder as clap;
# use std::ffi::OsStr;
# use clap::builder::TypedValueParser;
# let cmd = clap::Command::new("test");
# let arg = None;
let value_parser = clap::builder::FalseyValueParser::new();
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("random")).unwrap(), true);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("100")).unwrap(), true);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("")).unwrap(), false);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("false")).unwrap(), false);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("No")).unwrap(), false);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("oFF")).unwrap(), false);
assert_eq!(value_parser.parse_ref(&cmd, arg, OsStr::new("0")).unwrap(), false);

Implementations

impl FalseyValueParser

fn new() -> Self

Parse false-like string values, everything else is true

impl Clone for FalseyValueParser

fn clone(self: &Self) -> FalseyValueParser

impl Copy for FalseyValueParser

impl Debug for FalseyValueParser

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Default for FalseyValueParser

fn default() -> Self

impl Freeze for FalseyValueParser

impl RefUnwindSafe for FalseyValueParser

impl Send for FalseyValueParser

impl Sync for FalseyValueParser

impl TypedValueParser for FalseyValueParser

fn parse_ref(self: &Self, cmd: &Command, _arg: Option<&Arg>, value: &OsStr) -> Result<<Self as >::Value, Error>
fn possible_values(self: &Self) -> Option<Box<dyn Iterator<Item = PossibleValue> + '_>>

impl Unpin for FalseyValueParser

impl UnsafeUnpin for FalseyValueParser

impl UnwindSafe for FalseyValueParser

impl<I> IntoResettable for FalseyValueParser

fn into_resettable(self: Self) -> Resettable<ValueParser>

impl<T> Any for FalseyValueParser

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for FalseyValueParser

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for FalseyValueParser

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for FalseyValueParser

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for FalseyValueParser

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for FalseyValueParser

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for FalseyValueParser

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for FalseyValueParser

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for FalseyValueParser

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>