Struct clap::builder::PossibleValue
source · [−]pub struct PossibleValue { /* private fields */ }
Expand description
A possible value of an argument.
This is used for specifying possible values of Args.
See also PossibleValuesParser
NOTE: Most likely you can use strings, rather than PossibleValue
as it is only required
to hide single values from help messages and shell completions or to attach help to
possible values.
Examples
let cfg = Arg::new("config")
.action(ArgAction::Set)
.value_name("FILE")
.value_parser([
PossibleValue::new("fast"),
PossibleValue::new("slow").help("slower than fast"),
PossibleValue::new("secret speed").hide(true)
]);
Implementations
sourceimpl PossibleValue
impl PossibleValue
sourcepub fn new(name: impl Into<Str>) -> Self
pub fn new(name: impl Into<Str>) -> Self
Create a PossibleValue
with its name.
The name will be used to decide whether this value was provided by the user to an argument.
NOTE: In case it is not hidden it will also be shown in help messages for arguments
that use it as a possible value and have not hidden them through Arg::hide_possible_values(true)
.
Examples
PossibleValue::new("fast")
sourcepub fn help(self, help: impl IntoResettable<StyledStr>) -> Self
pub fn help(self, help: impl IntoResettable<StyledStr>) -> Self
Sets the help description of the value.
This is typically displayed in completions (where supported) and should be a short, one-line description.
Examples
PossibleValue::new("slow")
.help("not fast")
sourcepub fn hide(self, yes: bool) -> Self
pub fn hide(self, yes: bool) -> Self
Hides this value from help and shell completions.
This is an alternative to hiding through Arg::hide_possible_values(true)
, if you only
want to hide some values.
Examples
PossibleValue::new("secret")
.hide(true)
sourcepub fn alias(self, name: impl IntoResettable<Str>) -> Self
pub fn alias(self, name: impl IntoResettable<Str>) -> Self
sourceimpl PossibleValue
impl PossibleValue
Reflection
sourcepub fn is_hide_set(&self) -> bool
pub fn is_hide_set(&self) -> bool
Report if PossibleValue::hide
is set
sourcepub fn get_name_and_aliases(&self) -> impl Iterator<Item = &str> + '_
pub fn get_name_and_aliases(&self) -> impl Iterator<Item = &str> + '_
Returns all valid values of the argument value.
Namely the name and all aliases.
sourcepub fn matches(&self, value: &str, ignore_case: bool) -> bool
pub fn matches(&self, value: &str, ignore_case: bool) -> bool
Tests if the value is valid for this argument value
The value is valid if it is either the name or one of the aliases.
Examples
let arg_value = PossibleValue::new("fast").alias("not-slow");
assert!(arg_value.matches("fast", false));
assert!(arg_value.matches("not-slow", false));
assert!(arg_value.matches("FAST", true));
assert!(!arg_value.matches("FAST", false));
Trait Implementations
sourceimpl Clone for PossibleValue
impl Clone for PossibleValue
sourcefn clone(&self) -> PossibleValue
fn clone(&self) -> PossibleValue
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for PossibleValue
impl Debug for PossibleValue
sourceimpl Default for PossibleValue
impl Default for PossibleValue
sourcefn default() -> PossibleValue
fn default() -> PossibleValue
Returns the “default value” for a type. Read more
sourceimpl<S: Into<Str>> From<S> for PossibleValue
impl<S: Into<Str>> From<S> for PossibleValue
sourceimpl PartialEq<PossibleValue> for PossibleValue
impl PartialEq<PossibleValue> for PossibleValue
sourcefn eq(&self, other: &PossibleValue) -> bool
fn eq(&self, other: &PossibleValue) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &PossibleValue) -> bool
fn ne(&self, other: &PossibleValue) -> bool
This method tests for !=
.
impl Eq for PossibleValue
impl StructuralEq for PossibleValue
impl StructuralPartialEq for PossibleValue
Auto Trait Implementations
impl RefUnwindSafe for PossibleValue
impl Send for PossibleValue
impl Sync for PossibleValue
impl Unpin for PossibleValue
impl UnwindSafe for PossibleValue
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more