Expand description
§getopt2 command line parser
§Main features
- GNU getopt flexible argument parsing rules. Options and positional arguments can be mixed.
- Unknown options are turned into arguments.
- Double dash “–” support for options / arguments separation.
- POSIX mode parsing when optstring starts with “+”
- Optional argument support “::”
- Allow use of “?” as option character. Always active, supported compatibility with getopt extension when optstring starts with “:”.
getopt2::new parses the command line elements and isolates arguments from options.
It returns a getopt structure where you can query options and use isolated arguments.
A 2 characters long element that starts with ‘-’ (and is not exactly --) is an option element.
The character following the initial ‘-’ is an option character.
A double dash -- can be used to indicate the end of options; any arguments following
it are treated as positional arguments.
Option values are separated from option element with spaces.
§Example
use std::env::args;
use getopt2::hideBin;
let rc = getopt2::new(hideBin(args()), "ab:c");
if let Ok(g) = rc {
// command line options parsed sucessfully
if let Some(str) = g.options.get(&'b') {
// handle b argument
println!("option -b have {} argument", str);
};
};§Reference
- POSIX getopt function.
- GNU libc getopt function.
Structs§
- getopt
- Parsed command line options.
Enums§
- argument
- Information if option have an argument.