19 class DtGLSLPreprocessor;
int NumArgs
Number of arguments.
Definition: DtGLSLMacro.h:38
DtGLSLToken(* ExpandFunc)(DtGLSLPreprocessor *iParent, int iNumArgs, DtGLSLToken *iArgs)
A pointer to function implementation (if macro is really a func)
Definition: DtGLSLMacro.h:48
This is a simplistic C/C++-like preprocessor.
Definition: DtGLSLPreprocessor.h:74
bool Expanding
true if macro expansion is in progress
Definition: DtGLSLMacro.h:50
DtGLSLToken Body
Unparsed macro body (keeps the whole raw unparsed macro body)
Definition: DtGLSLMacro.h:44
DtGLSLToken Expand(int iNumArgs, DtGLSLToken *iArgs, DtGLSLMacro *iMacros)
Expand the macro value (will not work for functions)
A input token.
Definition: DtGLSLToken.h:29
DtGLSLToken * Args
The names of the arguments.
Definition: DtGLSLMacro.h:40
DtGLSLMacro * Next
Next macro in chained list.
Definition: DtGLSLMacro.h:46
DtGLSLToken Name
Macro name.
Definition: DtGLSLMacro.h:36
A macro definition.
Definition: DtGLSLMacro.h:22
~DtGLSLMacro()
Desctructor.
DtGLSLToken Value
The macro value.
Definition: DtGLSLMacro.h:42
DtGLSLMacro(const DtGLSLToken &iName)
Constructor.