man clig_Float (Conventions) - declare an option with parameters of type float
NAME
::clig::Float - declare an option with parameters of type float
SYNOPSIS
package require clig namespace import ::clig::* setSpec db
Float -opt varname usage [-c min max] {[-d default ...] | [-m]} [-r rmin rmax]
DESCRIPTION
The Float command declares -opt to have zero or more floating point arguments. The parameters variable and usage as well as the options -c, -d and -m" are described in clig::String(n).
- -r
- instructs the parser to check that arguments given to -opt are within the inclusive range between rmin and rmax. Special values for rmin and rmax are -oo and oo" denoting negative and positive infinity thereby not constraining the parameters of -opt.
WARNING: The implementation of option -d is currently incomplete insofar, as the specified default values are not checked by clig, i.e. the following would go unnoticed:
-d 1.0 -r 500.0 600.0
In this case, if option is not on the command line, the clig parser will set variable varname for its caller to the out-of-range value 1.0. (Maybe this is a feature?)
Example use of Float:
Float -p prob {list of probabilities adding up to one} \ -r 0.0 1.0 -d 0.1 0.2 0.7 \ -c 1 oo
Please note, that the additional constraint requiring the values summing to 1.0 cannot be checked by the parser.
PARSER RESULT
tcl
Within a Tcl-script, the parser will set the variable with name varname in the stack-frame of its caller if and only if option -opt is found on the command line or has a default value.
C
The structure returned by the parser contains the slots varnameP, varname and varnameC. The slot varnameP will be set to a non-zero value, if and only if the option -opt is found on the command line or has a default value. Otherwise it will be 0. The slot varnameC will be set to the number of arguments found for -opt. If the number of arguments for -opt is allowed to be greater than 1, slot varname has type float*, otherwise it has type float.
SEE ALSO
clig(1), clig_Commandline(7), clig_Description(7), clig_Double(7), clig_Flag(7), clig_Int(7), clig_Long(7), clig_Name(7), clig_Rest(7), clig_String(7), clig_Usage(7), clig_Version(7), clig_parseCmdline(7)