Trait arg_combinators::arg::Arg [−][src]
pub trait Arg { type Item; type Error: Debug + Display; fn update_switches<S: Switches>(&self, switches: &mut S); fn name(&self) -> String; fn get(&self, matches: &Matches) -> Result<Self::Item, Self::Error>; fn validate(&self) -> Option<Invalid> { ... } fn parse<I>(
&self,
args: I
) -> (Result<Self::Item, TopLevelError<Self::Error>>, Usage)
where
I: IntoIterator,
I::Item: AsRef<OsStr>, { ... } fn parse_env(
&self,
program_name: ProgramName
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName) { ... } fn parse_env_default(
&self
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName) { ... } fn just_parse<I>(
&self,
args: I
) -> Result<Self::Item, TopLevelError<Self::Error>>
where
I: IntoIterator,
I::Item: AsRef<OsStr>, { ... } fn just_parse_env(
&self,
program_name: ProgramName
) -> Result<Self::Item, TopLevelError<Self::Error>> { ... } fn just_parse_env_default(
&self
) -> Result<Self::Item, TopLevelError<Self::Error>> { ... } }
Associated Types
Required Methods
fn update_switches<S: Switches>(&self, switches: &mut S)
fn name(&self) -> String
fn get(&self, matches: &Matches) -> Result<Self::Item, Self::Error>
Provided Methods
fn validate(&self) -> Option<Invalid>
fn parse<I>(
&self,
args: I
) -> (Result<Self::Item, TopLevelError<Self::Error>>, Usage) where
I: IntoIterator,
I::Item: AsRef<OsStr>,
&self,
args: I
) -> (Result<Self::Item, TopLevelError<Self::Error>>, Usage) where
I: IntoIterator,
I::Item: AsRef<OsStr>,
fn parse_env(
&self,
program_name: ProgramName
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName)
&self,
program_name: ProgramName
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName)
fn parse_env_default(
&self
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName)
&self
) -> (Result<Self::Item, TopLevelError<Self::Error>>, UsageWithProgramName)
fn just_parse<I>(
&self,
args: I
) -> Result<Self::Item, TopLevelError<Self::Error>> where
I: IntoIterator,
I::Item: AsRef<OsStr>,
&self,
args: I
) -> Result<Self::Item, TopLevelError<Self::Error>> where
I: IntoIterator,
I::Item: AsRef<OsStr>,
fn just_parse_env(
&self,
program_name: ProgramName
) -> Result<Self::Item, TopLevelError<Self::Error>>
&self,
program_name: ProgramName
) -> Result<Self::Item, TopLevelError<Self::Error>>
fn just_parse_env_default(
&self
) -> Result<Self::Item, TopLevelError<Self::Error>>
&self
) -> Result<Self::Item, TopLevelError<Self::Error>>
Implementors
impl<A, D> Arg for D where
A: Arg,
D: Deref<Target = A>, type Item = A::Item; type Error = A::Error;impl<T> Arg for Value<T> where
T: Clone, type Item = T; type Error = Never;impl Arg for Flag type Item = bool; type Error = Never;
impl Arg for Opt type Item = Option<String>; type Error = Never;
impl Arg for MultiFlag type Item = usize; type Error = Never;
impl Arg for MultiOpt type Item = Vec<String>; type Error = Never;
impl Arg for Free type Item = Vec<String>; type Error = Never;
impl<A> Arg for ArgExt<A> where
A: Arg, type Item = A::Item; type Error = A::Error;impl<A> Arg for Valid<A> where
A: Arg, type Item = A::Item; type Error = ValidError<A::Error>;