structopt_toml::structopt

Trait StructOpt

Source
pub trait StructOpt {
    // Required methods
    fn clap<'a, 'b>() -> App<'a, 'b>;
    fn from_clap(matches: &ArgMatches<'_>) -> Self;

    // Provided methods
    fn from_args() -> Self
       where Self: Sized { ... }
    fn from_args_safe() -> Result<Self, Error>
       where Self: Sized { ... }
    fn from_iter<I>(iter: I) -> Self
       where Self: Sized,
             I: IntoIterator,
             <I as IntoIterator>::Item: Into<OsString> + Clone { ... }
    fn from_iter_safe<I>(iter: I) -> Result<Self, Error>
       where Self: Sized,
             I: IntoIterator,
             <I as IntoIterator>::Item: Into<OsString> + Clone { ... }
}
Expand description

A struct that is converted from command line arguments.

Required Methods§

Source

fn clap<'a, 'b>() -> App<'a, 'b>

Returns clap::App corresponding to the struct.

Source

fn from_clap(matches: &ArgMatches<'_>) -> Self

Builds the struct from clap::ArgMatches. It’s guaranteed to succeed if matches originates from an App generated by StructOpt::clap called on the same type, otherwise it must panic.

Provided Methods§

Source

fn from_args() -> Self
where Self: Sized,

Builds the struct from the command line arguments (std::env::args_os). Calls clap::Error::exit on failure, printing the error message and aborting the program.

Source

fn from_args_safe() -> Result<Self, Error>
where Self: Sized,

Builds the struct from the command line arguments (std::env::args_os). Unlike StructOpt::from_args, returns clap::Error on failure instead of aborting the program, so calling .exit is up to you.

Source

fn from_iter<I>(iter: I) -> Self
where Self: Sized, I: IntoIterator, <I as IntoIterator>::Item: Into<OsString> + Clone,

Gets the struct from any iterator such as a Vec of your making. Print the error message and quit the program in case of failure.

NOTE: The first argument will be parsed as the binary name unless clap::AppSettings::NoBinaryName has been used.

Source

fn from_iter_safe<I>(iter: I) -> Result<Self, Error>
where Self: Sized, I: IntoIterator, <I as IntoIterator>::Item: Into<OsString> + Clone,

Gets the struct from any iterator such as a Vec of your making.

Returns a clap::Error in case of failure. This does not exit in the case of --help or --version, to achieve the same behavior as from_iter() you must call .exit() on the error value.

NOTE: The first argument will be parsed as the binary name unless clap::AppSettings::NoBinaryName has been used.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T> StructOpt for Box<T>
where T: StructOpt,

Source§

fn clap<'a, 'b>() -> App<'a, 'b>

Source§

fn from_clap(matches: &ArgMatches<'_>) -> Box<T>

Implementors§