Skip to content
/ arg_fn Public

Argument parsing with higher order functions

Notifications You must be signed in to change notification settings

Vonr/arg_fn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

arg_fn

Argument parsing crate that allows the user to specify what to do for each argument.

Example

#[derive(PartialEq, Debug, Default)]
struct Config {
    foo: bool,
    bar: bool,
}

let cfg = arg_fn::Parser::new(Config::default(), |_cfg, _arg| {})
    .arg("-foo", |cfg| cfg.foo = true)
    .arg("-nofoo", |cfg| cfg.foo = false)
    .arg("-bar", |cfg| cfg.bar = true)
    .arg("-nobar", |cfg| cfg.bar = false)
    .parse(["-bar", "-nofoo", "-foo", "-nobar", "-foo"]);

assert_eq!(
    cfg,
    Config {
        foo: true,
        bar: false,
    }
)

About

Argument parsing with higher order functions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages