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