[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
AutoOpts will automatically generate a callback procedure for options with enumerated keyword arguments and numeric arguments with range checking. If you have specified such an option, you may not specify any of the attributes listed here.
Otherwise, you may pick zero or one of the following attributes.
The first two attributes interact with the documentation
and
settable
attributes, See section 7.3.4.3 Special Option Handling.
static void doOpt<name>( tOptions* pOptions, tOptDesc* pOptDesc ) { <flag_code> } |
Only certain fields within the tOptions
and tOptDesc
structures may be accessed. See section 7.4.1 Data for Option Processing.
flag_code
, except that the
source is kept in the output file instead of the definitions file.
A long comment is used to demarcate the code. You must not modify
that marker. Before regenerating the option code file,
the old file is renamed from MUMBLE.c to MUMBLE.c.save. The template
will be looking there for the text to copy into the new output file.
doOpt<name>
. It has the same restrictions
regarding the fields within the structures passed in as arguments.
See section 7.4.1 Data for Option Processing.
flag_code
can be executed
when this option is encountered.
STACKCT_OPT(NAME)
) and to obtain a
pointer to a list of pointers to the argument values
(STACKLST_OPT(NAME)
). Obviously, for a stackable argument,
the max
attribute needs to be set higher than 1
.
If two options are equivalenced (see section 7.3.4.3 Special Option Handling) and
specify this attribute, then the "equivalenced-to" option will add
entries to the stack, and the "equivalencing" option, if specified,
will remove entries that match the regular expression argument. The
pattern, ".*
" will efficiently remove all the entries in the
stack. It would not be useful to have more than two options in this
equivalence class.
If the stacked option has a disablement prefix, then the entire
stack of arguments will be cleared even more efficiently than the
".*
" regular expression. A stacked, equivalencing option with
a disablement prefix will cause undefined results.
If all of this is confusing, then don't mess with equivalenced stacked
option arguments. If you really want to know, the AutoGen --define
option (see section 5.20 define option (-D)) has a stacked argument, and --undefine
(see section 5.21 undefine option (-U)) is equivalenced to it.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |