[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The general syntax is:
[ { <native-macro-name> | <user-defined-name> } ] [ <arg> ... ] |
The syntax for <arg>
depends on the particular macro,
but is generally a full expression (see section Macro Expression Syntax).
Here are the exceptions to that general rule:
INVOKE
macros, implicit or explicit, must be followed by
a list of name/string value pairs. The string values are
simple expressions, as described above.
That is, the INVOKE
syntax is one of these two:
<user-macro-name> [ <name> [ = <expression> ] ... ] INVOKE <name-expression> [ <name> [ = <expression> ] ... ] |
FOR <name> [ <separator-string> ] FOR <name> (...Scheme expression list) FOR <name> IN <string-entry> [ ... ] |
where:
must be a simple name.
is inserted between copies of the enclosed block. Do not try to use “IN” as your separator string. It won’t work.
is an entry in a list of strings. “<name>
” is assigned
each value from the “IN
” list before expanding the FOR
block.
is expected to contain one or more of the for-from
,
for-to
, for-by
, and for-sep
functions.
(See section FOR - Emit a template block multiple times, and AutoGen Scheme Functions)
The first two forms iterate over the FOR
block if <name>
is found in the AutoGen values. The last form will create the AutoGen
value named <name>
.
DEFINE
macros must be followed by a simple name.
Anything after that is ignored. Consequently, that “comment space”
may be used to document any named values the macro expects to have
set up as arguments. See section DEFINE - Define a user AutoGen macro.
COMMENT
, ELSE
, ESAC
and the END*
macros take no arguments and ignore everything after the macro name
(e.g. see COMMENT - A block of comment to be ignored)
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated by Bruce Korb on August 21, 2015 using texi2html 1.82.