[ < ] [ > ] [ << ] [ Up ] [ >> ] [Top] [Contents] [Index] [ ? ]

3.6 AutoGen Native Macros

This section describes the various AutoGen natively defined macros. Unlike the Scheme functions, some of these macros are "block macros" with a scope that extends through a terminating macro. Block macros must not overlap. That is to say, a block macro started within the scope of an encompassing block macro must have its matching end macro appear before the encompassing block macro is either ended or subdivided.

The block macros are these:

CASE

This macro has scope through the ESAC macro. The scope is subdivided by SELECT macros. You must have at least one SELECT macro.

DEFINE

This macro has scope through the ENDDEF macro. The defined user macro can never be a block macro. This macro is extracted from the template before the template is processed. Consequently, you cannot select a definition based on context. You can, however, place them all at the end of the file.

FOR

This macro has scope through the ENDFOR macro.

IF

This macro has scope through the ENDIF macro. The scope may be subdivided by ELIF and ELSE macros. Obviously, there may be only one ELSE macro and it must be the last of these subdivisions.

INCLUDE

This macro has the scope of the included file. It is a block macro in the sense that the included file must not contain any incomplete block macros.

WHILE

This macro has scope through the ENDWHILE macro.

3.6.1 AutoGen Macro Syntax
3.6.2 BREAK - Leave a FOR or WHILE macro
3.6.3 CASE - Select one of several template blocks
3.6.4 COMMENT - A block of comment to be ignored
3.6.5 CONTINUE - Skip to end of a FOR or WHILE macro.
3.6.6 DEBUG - Print debug message to trace output
3.6.7 DEFINE - Define a user AutoGen macro
3.6.8 ELIF - Alternate Conditional Template Block
3.6.9 ELSE - Alternate Template Block
3.6.10 ENDDEF - Ends a macro definition.
3.6.11 ENDFOR - Terminates the FOR function template block
3.6.12 ENDIF - Terminate the IF Template Block
3.6.13 ENDWHILE - Terminate the WHILE Template Block
3.6.14 ESAC - Terminate the CASE Template Block
3.6.15 EXPR - Evaluate and emit an Expression
3.6.16 FOR - Emit a template block multiple times
3.6.17 IF - Conditionally Emit a Template Block
3.6.18 INCLUDE - Read in and emit a template block
3.6.19 INVOKE - Invoke a User Defined Macro
3.6.20 RETURN - Leave an INVOKE-d (DEFINE) macro
3.6.21 SELECT - Selection block for CASE function
3.6.22 UNKNOWN - Either a user macro or a value name.
3.6.23 WHILE - Conditionally loop over a Template Block
3.6.24 Inserting text from a shell script
3.6.25 Inserting text from a scheme script

[ < ] [ > ] [ << ] [ Up ] [ >> ] [Top] [Contents] [Index] [ ? ]

This document was generated by Bruce Korb on August 21, 2015 using texi2html 1.82.

AltStyle によって変換されたページ (->オリジナル) /