Args
Command-line argument parsing.
Module: std/args.vais
Types
ArgParser
Builder-style argument parser.
S ArgParser {
# internal implementation
}
Methods
add_flag(name: str, short: str, help: str)
Adds a boolean flag.
parser := ArgParser {}
parser.add_flag("verbose", "v", "Enable verbose output")
add_option(name: str, short: str, help: str, default: str)
Adds a named option with a default value.
parser.add_option("output", "o", "Output file path", "out.txt")
add_positional(name: str, help: str)
Adds a positional argument.
parser.add_positional("input", "Input file")
parse()
Parses command-line arguments. Call after adding all flags/options.
parser.parse()
get_flag(name: str) -> bool
Returns whether a flag was set.
I parser.get_flag("verbose") {
puts("Verbose mode enabled")
}
get_option(name: str) -> str
Returns the value of a named option.
output := parser.get_option("output")
print_help()
Prints the help message with all registered flags and options.
Example
F main() -> i64 {
parser := ArgParser {}
parser.add_flag("verbose", "v", "Enable verbose output")
parser.add_option("output", "o", "Output file", "a.out")
parser.add_positional("input", "Source file")
parser.parse()
I parser.get_flag("verbose") {
puts("Compiling with verbose output...")
}
output := parser.get_option("output")
puts("Output: {output}")
0
}
See Also
- IO — standard I/O functions