Struct gflags::Flag

source ·
pub struct Flag<T> { /* private fields */ }
Expand description

The state associated with a single flag.

An invocation of gflags::define! with flag long name --the_name and flag type T declares an item static the_name: Flag<T> through which the state of the flag can be accessed.

After gflags::parse() has been called, the value of a flag is available through its .flag field which is of type T.

Examples

use std::path::Path;

gflags::define! {
    /// Search for patterns from the given file, with one pattern per line.
    -f, --file: &Path
}

fn main() {
    let patterns = gflags::parse();

    if FILE.is_present() {
        let path = FILE.flag;
        println!("searching for patterns from file: {}", path.display());
    } else {
        println!("searching for patterns given on command line: {:?}", patterns);
    }
}

Implementations§

Whether this flag was provided on the command line.

When using flags for which a default value is not provided, be sure to check .is_present() because accessing .flag when not present will cause a panic.

When a flag has a default value and is not passed on the command line, is_present() will be false and .flag will refer to the default value.

Count number of times an option is repeated on the command line.

Useful to display verbosity or debug level by repeating a boolean flag several times. For example, -vv for “very verbose” (repeat count 2) or -ddd for debug level 3.

Trait Implementations§

The resulting type after dereferencing.
Dereferences the value.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.