*arg-kit* is a featherweight library that helps parse arguments using one of
Rust's most versatile and powerful syntaxes: `match {}`

Do you really need bloated proc macros when collecting arguments can be
simplified to a `.next()`? You have zero indication of what's going on under the
hood, so you can't implement your own behaviour.

That is why I don't call it an "argument parser" on its own. Your program parses
the arguments, this just helps iterate over it, like so:

```rust
let mut argv = std::env::args();
for_args(argv; {
    arg!(-h | --help) => eprintln!("{HELP_TEXT}"),
    arg!(-v | --value) => do_something(argv.next()?),
    unknown => panic!("Unknown argument {unknown}"),
});
```

...which expands to:

```rust
let mut argv = std::env::args();
while let Some(args) = argv.next() {
    for arg in args.as_arg() {
        match arg {
            ...
```

Take a look through the [docs](https://docs.rs/arg-kit) for specific details.
The sauce is hosted on [my website](http://64-tesseract.us.to/projects#arg-kit)
because GitHub is gay.
