[]Trait geng_core::prelude::StructOpt

pub trait StructOpt {
    fn clap<'a, 'b>() -> App<'a, 'b>;
fn from_clap(matches: &ArgMatches) -> Self; fn from_args() -> Self { ... }
fn from_iter<I>(iter: I) -> Self
    where
        I: IntoIterator,
        <I as IntoIterator>::Item: Into<OsString>,
        <I as IntoIterator>::Item: Clone
, { ... }
fn from_iter_safe<I>(iter: I) -> Result<Self, Error>
    where
        I: IntoIterator,
        <I as IntoIterator>::Item: Into<OsString>,
        <I as IntoIterator>::Item: Clone
, { ... } }

A struct that is converted from command line arguments.

Required methods

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

Returns the corresponding clap::App.

fn from_clap(matches: &ArgMatches) -> Self

Creates the struct from clap::ArgMatches. It cannot fail with a parameter generated by clap by construction.

Loading content...

Provided methods

fn from_args() -> Self

Gets the struct from the command line arguments. Print the error message and quit the program in case of failure.

fn from_iter<I>(iter: I) -> Self where
    I: IntoIterator,
    <I as IntoIterator>::Item: Into<OsString>,
    <I as IntoIterator>::Item: 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 AppSettings::NoBinaryName has been used.

fn from_iter_safe<I>(iter: I) -> Result<Self, Error> where
    I: IntoIterator,
    <I as IntoIterator>::Item: Into<OsString>,
    <I as IntoIterator>::Item: 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 AppSettings::NoBinaryName has been used.

Loading content...

Implementations on Foreign Types

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

Loading content...

Implementors

Loading content...