DragonFly On-Line Manual Pages
CLIG(1) Programmer's Manual CLIG(1)
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_Version(n), clig_Usage(n), clig(1), clig_Int(n),
clig_Commandline(n), clig_Long(n), clig_Flag(n), clig_String(n),
clig_Double(n), clig_Name(n), clig_Rest(n), clig_Description(n),
clig_parseCmdline(n)
Kir 1.9.11.1 CLIG(1)