[Top]
Getopt
|
Method Getopt.find_option()
- Method
find_option
-
string|int Getopt.find_option(array(string) argv, array(string)|string shortform, array(string)|string|void longform, array(string)|string|void envvars, string|int|void def, int|void throw_errors)
- Description
-
This is a generic function to parse command line options of the
type -f, --foo or --foo=bar.
- Parameter argv
-
The first argument should be the array of strings that was sent as
the second argument to your main() function.
- Parameter shortform
-
The second is a string with the short form of your option. The
short form must be only one character long. It can also be an
array of strings, in which case any of the options in the array
will be accepted.
- Parameter longform
-
This is an alternative and maybe more readable way to give the
same option. If you give "foo" as longform your program
will accept --foo as argument. This argument can also be
an array of strings, in which case any of the options in the
array will be accepted.
- Parameter envvars
-
This argument specifies an environment variable that can be used
to specify the same option, to make it easier to customize
program usage. It can also be an array of strings, in which case
any of the mentioned variables in the array may be used.
- Parameter def
-
This argument has two functions: It specifies if the option takes an
argument or not, and it informs Getopt.find_option what to return if the
option is not present. If def is given and the option does not have an
argument Getopt.find_option will fail.
- Parameter throw_errors
-
If throw_errors has been specified Getopt.find_option will throw errors
on failure. If it has been left out, or is 0 (zero), it will
instead print an error message on Stdio.stderr and exit the
program with result code 1 on failure.
- Returns
-
Returns the value the option has been set to if any.
If the option is present, but has not been set to anything 1
will be returned.
Otherwise if any of the environment variables specified in envvars has
been set, that value will be return.
If all else fails, def will be returned.
- Note
-
Getopt.find_option modifies argv.
This function reads options even if they are written after the first
non-option on the line.
Index 0 (zero) of argv is not scanned for options, since it
is reserved for the program name.
- See also
-
Getopt.get_args
|