Expand description
§A command line parser
§Project
- License: GNU Lesser General Public License, either version 3, or (at your option) any later version.
- This project follows Semantic Versioning 2.0.0
§Features
- No debts. It’s an argument parser, so standard Rust is enough.
parse_file()helps parse arguments stored in your file.docshelps make documentation for your program.- Optional
binfeature provides a program which helps you generate simple Rust source code templates. You can run the program withhelpcommand for more details.
§Specification
A program argument can be:
- A command.
- An argument.
- An option.
- A special phrase:
--.
-
Commands
- A command can be anything which does not start with either
-or--.
- A command can be anything which does not start with either
-
Arguments
- Same as a command, an argument can be anything which does not start with either
-or--.
- Same as a command, an argument can be anything which does not start with either
-
Options
An option starts with
-or--.-
-supports a single short format option. -
--supports a single long format option. -
Option values can be anything.
-
An option’s key and value can be separated by either:
- An equals sign
=. - Or mutiple white spaces.
- An equals sign
-
A boolean option has 2 values:
trueandfalse. The value is optional. If absent,truewill be assigned.
-
-
Special phrases
--means: the program should process all phrases after it as arguments. This is normally used to pass arguments to sub process.
-
Passing arguments to a program
Must be in this form:
program [command|arguments...|options...|-] [-- [arguments...]]in which:
[]means optional....means multiple arguments.
Modules§
- docs
- Kit for documentation
- licenses
- Licenses
- paths
- Extensions for
Args - version_
info 0.61.0(March 24th, 2025)
Macros§
- make_
cmds - Makes a vector of
Cow<'_, Cmd<'_>>from a list of eitherCmdor&Cmd - make_
options - Makes a vector of
Cow<'_, Option<'_>>from a list of eitherOptionor&Option
Structs§
- Args
- Arguments
Enums§
- Answer
- Answer
- Merge
Option - Merge option
Constants§
- CODE_
NAME - Crate code name
- DIA_
ARGS_ FILE_ FORMAT - Description of argument file format, in English
- DIA_
ARGS_ FILE_ NAME - Default file name for storing arguments:
.dia-args - ID
- ID of this crate
- MAX_
DIA_ ARGS_ FILE_ SIZE - Maximum size allowed for argument file to be parsed (3 MiB)
- NAME
- Crate name
- RELEASE_
DATE - Crate release date (year/month/day)
- TAG
- Tag, which can be used for logging…
- VERSION
- Crate version
Functions§
- ask_
user - Asks user some question
- lock_
write_ err - Locks stderr and writes to it
- lock_
write_ out - Locks stdout and writes to it
- parse
- Parses from process’ arguments
- parse_
file - Parses from file
- parse_
stream - Parses a stream of strings, separated by null byte (
0) - parse_
strings - Parses from an iterator of strings
- read_
line - Reads a line from stdin, trims and converts it to
T
Type Aliases§
- Result
- Result type used in this crate