command defines structures for configuring a command-line binary's command(s). A binary might have several (sub-)Commands (e.g. like Git, where commit, log, etc. are all commands), or it might just have a single Command if it's entirely a single-use binary.
Error handling for flaggy.
main_impl provides command-line-application-specific main() implementations.
spec defines the structures which are used to describe a single command-line flag (Spec) or a set of flags as they relate to a command (Specs).
value defines structures which represent the values obtained by parsing command-line flags, and utilities for accessing them in a type-safe way.
Values is a structure which contains all of the parsed command-line flag values (or the default values for those flags). If parsing fails (including if some required flags weren't specified, for example), an error is returned.
A Value is the value associated with a given flag. The type of the value is different depending on the type of flag it is associated with.
Take a single optional flag value from a list of values. Generally this should not be called directly, instead being used via #[command_callback].
Take a single required flag value from a list of values. Generally this should not be called directly, instead being used via #[command_callback].