[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Emit a #ifndef
/#define
sequence based upon the output
file name and the provided prefix. It will also define a scheme
variables named, header-file
and header-guard
.
The #define
name is composed as follows:
_GUARD
".
The final #define
name is stored in an SCM symbol named
header-guard
. Consequently, the concluding #endif
for the
file should read something like:
#endif /* [+ (. header-guard) +] */ |
The name of the header file (the current output file) is also stored in an SCM
symbol, header-file
. Therefore, if you are also generating a
C file that uses the previously generated header file, you can put
this into that generated file:
#include "[+ (. header-file) +]" |
Obviously, if you are going to produce more than one header file from a particular template, you will need to be careful how these SCM symbols get handled.
Arguments:
prefix - first segment of #define
name