Expand description
GNU-like command line options parser for long and short formats. Optional
argument (aka option’s value) may be associated with an option. The parsing
routine parse_opts() accepts two user callbacks:
opt_i()provides parser with a context the parsed option may be used,opt_h()is the actual handler of the option.
The library doesn’t interpret parsed options, rather passes them to the
user’s handler to further processing. The idea is similar to getopt(3)
and getopt_long(3) routines.
§Options Format
§Short format
All options starting with a single hyphen character - are short options.
For example: -a -b -c constitute 3 short options. These options may grouped
into a single block of options as -abc.
If a short option requires an argument, the argument may be provided directly
after the option or separated by white-space(s): -dARG or -d ARG.
If short options are grouped into a block, the last one may be provided
with an argument. For example: -abcdARG or -abcd ARG is equivalent to
-a -b -c -d ARG, where -a -b -c don’t have an argument, while -d
does.
§Long format
If an option starts with -- it’s long format option. For example --help.
Long options may not be formed into a group. An argument may be provided to
the long-format option directly after = character or followed by
white-space(s): --config=FILE or --config FILE.
Structs§
Enums§
- CmdOpt
- Command option types.
- Info
Code - Option info codes returned by the
opt_i()callback. - OptVal
Spec - The enumeration specifies how a value has been provided for an option.
- Parse
Error - Parser error codes returned by the option handler
opt_h(). - Process
Code - Option process codes returned by the option handler
opt_h().
Functions§
- parse_
opts - Parse process command line options.