Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
CPreprocessor::Macro Class Reference

A macro definition. More...

Public Member Functions

 Macro (const Token &iName)
 
 ~Macro ()
 
Token Expand (int iNumArgs, Token *iArgs, Macro *iMacros)
 Expand the macro value (will not work for functions) More...
 

Public Attributes

Token Name
 Macro name. More...
 
int NumArgs
 Number of arguments. More...
 
Token * Args
 The names of the arguments. More...
 
Token Value
 The macro value. More...
 
Token Body
 Unparsed macro body (keeps the whole raw unparsed macro body) More...
 
Macro * Next
 Next macro in chained list. More...
 
Token(* ExpandFunc )(CPreprocessor *iParent, int iNumArgs, Token *iArgs)
 A pointer to function implementation (if macro is really a func) More...
 
bool Expanding
 true if macro expansion is in progress More...
 

Detailed Description

A macro definition.

Definition at line 173 of file Preprocessor.h.

Constructor & Destructor Documentation

CPreprocessor::Macro::Macro ( const Token &  iName)
inline

Definition at line 193 of file Preprocessor.h.

CPreprocessor::Macro::~Macro ( )
inline

Definition at line 198 of file Preprocessor.h.

Member Function Documentation

CPreprocessor::Token CPreprocessor::Macro::Expand ( int  iNumArgs,
CPreprocessor::Token *  iArgs,
Macro *  iMacros 
)

Expand the macro value (will not work for functions)

Definition at line 196 of file Preprocessor.cpp.

Member Data Documentation

Token* CPreprocessor::Macro::Args

The names of the arguments.

Definition at line 181 of file Preprocessor.h.

Token CPreprocessor::Macro::Body

Unparsed macro body (keeps the whole raw unparsed macro body)

Definition at line 185 of file Preprocessor.h.

Token(* CPreprocessor::Macro::ExpandFunc)(CPreprocessor *iParent, int iNumArgs, Token *iArgs)

A pointer to function implementation (if macro is really a func)

Definition at line 189 of file Preprocessor.h.

bool CPreprocessor::Macro::Expanding

true if macro expansion is in progress

Definition at line 191 of file Preprocessor.h.

Token CPreprocessor::Macro::Name

Macro name.

Definition at line 177 of file Preprocessor.h.

Macro* CPreprocessor::Macro::Next

Next macro in chained list.

Definition at line 187 of file Preprocessor.h.

int CPreprocessor::Macro::NumArgs

Number of arguments.

Definition at line 179 of file Preprocessor.h.

Token CPreprocessor::Macro::Value

The macro value.

Definition at line 183 of file Preprocessor.h.


The documentation for this class was generated from the following files: