Struct getopts::Matches

source ·
pub struct Matches {
    pub(crate) opts: Vec<Opt>,
    pub(crate) vals: Vec<Vec<(usize, Optval)>>,
    pub free: Vec<String>,
}
Expand description

The result of checking command line arguments. Contains a vector of matches and a vector of free strings.

Fields§

§opts: Vec<Opt>

Options that matched

§vals: Vec<Vec<(usize, Optval)>>

Values of the Options that matched and their positions

§free: Vec<String>

Free string fragments

Implementations§

source§

impl Matches

source

pub(crate) fn opt_vals(&self, nm: &str) -> Vec<(usize, Optval)>

source

pub(crate) fn opt_val(&self, nm: &str) -> Option<Optval>

source

pub fn opt_defined(&self, nm: &str) -> bool

Returns true if an option was defined

source

pub fn opt_present(&self, nm: &str) -> bool

Returns true if an option was matched.

source

pub fn opt_count(&self, nm: &str) -> usize

Returns the number of times an option was matched.

source

pub fn opt_positions(&self, nm: &str) -> Vec<usize>

Returns a vector of all the positions in which an option was matched.

source

pub fn opts_present(&self, names: &[String]) -> bool

Returns true if any of several options were matched.

source

pub fn opts_str(&self, names: &[String]) -> Option<String>

Returns the string argument supplied to one of several matching options or None.

source

pub fn opt_strs(&self, nm: &str) -> Vec<String>

Returns a vector of the arguments provided to all matches of the given option.

Used when an option accepts multiple values.

source

pub fn opt_strs_pos(&self, nm: &str) -> Vec<(usize, String)>

Returns a vector of the arguments provided to all matches of the given option, together with their positions.

Used when an option accepts multiple values.

source

pub fn opt_str(&self, nm: &str) -> Option<String>

Returns the string argument supplied to a matching option or None.

source

pub fn opt_default(&self, nm: &str, def: &str) -> Option<String>

Returns the matching string, a default, or None.

Returns None if the option was not present, def if the option was present but no argument was provided, and the argument if the option was present and an argument was provided.

source

pub fn opt_get<T>(&self, nm: &str) -> Result<Option<T>, T::Err>
where T: FromStr,

Returns some matching value or None.

Similar to opt_str, also converts matching argument using FromStr.

source

pub fn opt_get_default<T>(&self, nm: &str, def: T) -> Result<T, T::Err>
where T: FromStr,

Returns a matching value or default.

Similar to opt_default, except the two differences. Instead of returning None when argument was not present, return def. Instead of returning &str return type T, parsed using str::parse().

Trait Implementations§

source§

impl Clone for Matches

source§

fn clone(&self) -> Matches

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Matches

source§

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

Formats the value using the given formatter. Read more
source§

impl PartialEq for Matches

source§

fn eq(&self, other: &Matches) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for Matches

source§

impl StructuralPartialEq for Matches

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

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

Performs the conversion.