Puma Reference Manual Puma::PreConditionalGroup Class Reference



Puma::PreConditionalGroup Class Reference

Preprocessor tree node representing a group of conditional directives. More...

#include <Puma/PreTreeNodes.h>

Inheritance diagram for Puma::PreConditionalGroup:
Inheritance graph

Public Member Functions

 PreConditionalGroup (PreTree *i, PreTree *dg, PreTree *ei)
 Constructor. More...
 
 PreConditionalGroup (PreTree *i, PreTree *e, PreTree *dg, PreTree *ei)
 Constructor. More...
 
void accept (PreVisitor &v)
 Part of the tree visitor pattern. More...
 
- Public Member Functions inherited from Puma::PreTreeComposite
virtual ~PreTreeComposite ()
 Destructor. More...
 
virtual void add_son (PreTree *s)
 Add a son (syntactic child node). More...
 
virtual void replace_son (int n, PreTree *new_s)
 Replace the n-th son. More...
 
virtual PreTree * son (int n) const
 Get the n-th son. More...
 
virtual int sons () const
 Get the number of sons. More...
 
virtual void add_daughter (PreTree *d)
 Add a daughter (semantic child node). More...
 
virtual void replace_daughter (int n, PreTree *new_d)
 Replace the n-th daughter. More...
 
virtual PreTree * daughter (int n) const
 Get the n-th daughter. More...
 
virtual int daughters () const
 Get the number of daughters. More...
 
virtual Token * startToken () const
 Get the first token of the syntactic construct represented by the sub-tree. More...
 
virtual Token * endToken () const
 Get the last token of the syntactic construct represented by the sub-tree. More...
 
- Public Member Functions inherited from Puma::PreTree
virtual ~PreTree ()
 Destructor. More...
 
virtual bool isLeaf () const
 Check if the node is a leaf, i.e. More...
 

Additional Inherited Members

- Static Public Attributes inherited from Puma::PreTreeComposite
static const int DYNAMIC = -1
 Dynamic number of sons and daughters. More...
 
- Protected Member Functions inherited from Puma::PreTreeComposite
 PreTreeComposite (int s, int d)
 Constructor. More...
 
- Protected Member Functions inherited from Puma::PreTree
 PreTree ()
 Constructor. More...
 

Detailed Description

Preprocessor tree node representing a group of conditional directives.

Example:

#if ... #elif ... #else ... #endif

Constructor & Destructor Documentation

Puma::PreConditionalGroup::PreConditionalGroup ( PreTree *  i,
PreTree *  dg,
PreTree *  ei 
)
inline

Constructor.

Parameters
iThe #if part.
dgThe directive group.
eiThe #endif part.
Puma::PreConditionalGroup::PreConditionalGroup ( PreTree *  i,
PreTree *  e,
PreTree *  dg,
PreTree *  ei 
)
inline

Constructor.

Parameters
iThe #if part.
eThe #elif or #else part.
dgThe directive group.
eiThe #endif part.

Member Function Documentation

void Puma::PreConditionalGroup::accept ( PreVisitor &  v)
inlinevirtual

Part of the tree visitor pattern.

Calls the node visiting functions suitable for this node type.

Parameters
vThe visitor object on which to call the visiting functions.

Implements Puma::PreTreeComposite.




Puma Reference Manual. Created on Fri Aug 28 2015.