Puma Reference Manual Puma: Puma::PreDefineFunctionDirective Class Reference



Puma::PreDefineFunctionDirective Class Reference

#include <Puma/PreTreeNodes.h>

Inheritance diagram for Puma::PreDefineFunctionDirective:

Inheritance graph

List of all members.


Detailed Description

Preprocessor tree node representing a #define directive for function-like macros.

Example:

 #define MUL(a,b) (a * b) 

Public Member Functions

 PreDefineFunctionDirective (PreTree *a, PreTree *b, PreTree *c, PreTree *d, PreTree *e, PreTree *f, PreTree *g, PreTree *h)
 Constructor.
 PreDefineFunctionDirective (PreTree *a, PreTree *b, PreTree *c, PreTree *d, PreTree *e, PreTree *f, PreTree *g)
 Constructor.
 PreDefineFunctionDirective (PreTree *a, PreTree *b, PreTree *c, PreTree *d, PreTree *e, PreTree *f)
 Constructor.
 PreDefineFunctionDirective (PreTree *a, PreTree *b, PreTree *c, PreTree *d, PreTree *e)
 Constructor.
void accept (PreVisitor &v)
 Part of the tree visitor pattern.

Constructor & Destructor Documentation

Puma::PreDefineFunctionDirective::PreDefineFunctionDirective ( PreTree *  a,
PreTree *  b,
PreTree *  c,
PreTree *  d,
PreTree *  e,
PreTree *  f,
PreTree *  g,
PreTree *  h 
) [inline]

Constructor.

Parameters:
a The #define token.
b The macro name.
c Left parenthesis before the parameter list.
d The macro parameter list.
e Comma before the last parameter.
f The token '...'.
g Right parenthesis behind the parameter list.
h The macro body.

Puma::PreDefineFunctionDirective::PreDefineFunctionDirective ( PreTree *  a,
PreTree *  b,
PreTree *  c,
PreTree *  d,
PreTree *  e,
PreTree *  f,
PreTree *  g 
) [inline]

Constructor.

Parameters:
a The #define token.
b The macro name.
c Left parenthesis before the parameter list.
d The macro parameter list.
e The token '...'.
f Right parenthesis behind the parameter list.
g The macro body.

Puma::PreDefineFunctionDirective::PreDefineFunctionDirective ( PreTree *  a,
PreTree *  b,
PreTree *  c,
PreTree *  d,
PreTree *  e,
PreTree *  f 
) [inline]

Constructor.

Parameters:
a The #define token.
b The macro name.
c Left parenthesis before the parameter list.
d The macro parameter list.
e Right parenthesis behind the parameter list.
f The macro body.

Puma::PreDefineFunctionDirective::PreDefineFunctionDirective ( PreTree *  a,
PreTree *  b,
PreTree *  c,
PreTree *  d,
PreTree *  e 
) [inline]

Constructor.

Parameters:
a The #define token.
b The macro name.
c Left parenthesis before the parameter list.
d Right parenthesis behind the parameter list.
e The macro body.


Member Function Documentation

void Puma::PreDefineFunctionDirective::accept ( PreVisitor &  v  )  [inline, virtual]

Part of the tree visitor pattern.

Calls the node visiting functions suitable for this node type.

Parameters:
v The visitor object on which to call the visiting functions.

Implements Puma::PreTreeComposite.




Puma Reference Manual. Created on 11 Jul 2008.