Navigation: Templates > Template Language Reference > Complete Alpha Listing >====== #MODULE (module area) ====== | |
#MODULE( name, description [, target, extension ] ) [, HLP( helpid ) ] [, EXTERNAL ]
#MODULE | Begins the module section. |
name | The name of the Module which identifies it for the Template Registry and Template Language statements. This must be a valid Clarion label. |
description | A string constant describing the #MODULE section for the Template Registry and Application Generator. |
target | A string constant that specifies the source language the Template generates. The word “EXTERNAL” is convention adopted to indicate an external source or object module. If omitted, it defaults to Clarion. |
extension | A string constant that specifies the source code file extension for the target. If omitted, it defaults to .CLW. |
HLP | Specifies on-line help is available. |
helpid | A string constant containing the identifier to access the Help system. This may be either a Help keyword or “context string.” |
EXTERNAL | Specifies no source generates into the module. |
The #MODULE statement defines the beginning of the section of the template which puts data into each generated source module's data area. The #MODULE Section is terminated by the next Template Code Section (#PROGRAM, #MODULE, #PROCEDURE, #CONTROL, #CODE, #EXTENSION, or #GROUP) statement encountered, or the end of the file. A Template set may contain multiple #MODULE statements.
Code generated by a #MODULE section is (usually) placed at the beginning of a source code file generated by the Application Generator.
#BUTTON, #PROMPT, and #DISPLAY statements are not valid within a #MODULE section.
Example:
#MODULE(ExternalOBJ,'External .OBJ module','EXTERNAL','.OBJ'),EXTERNAL
#MODULE(ExternalLIB,'External .LIB module','EXTERNAL','.LIB'),EXTERNAL
#MODULE(GENERATED,'Clarion MEMBER module')
MEMBER('%Program') !MEMBER statement is required
%ModuleData #!Data declarations local to the Module