PUMA Library Reference Manual
Loading...
Searching...
No Matches
Puma::PreDefineConstantDirective Class Reference

#include <Puma/PreTreeNodes.h>

+ Inheritance diagram for Puma::PreDefineConstantDirective:

Description

Preprocessor tree node representing a #define directive for constants.

Example:

#define CONSTANT 1

Public Member Functions

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

Additional Inherited Members

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

Constructor & Destructor Documentation

◆ PreDefineConstantDirective() [1/2]

Puma::PreDefineConstantDirective::PreDefineConstantDirective ( PreTree * d,
PreTree * n,
PreTree * v )
inline

Constructor.

Parameters
dThe #define token.
nThe name of the constant.
vThe constant value.

◆ PreDefineConstantDirective() [2/2]

Puma::PreDefineConstantDirective::PreDefineConstantDirective ( PreTree * d,
PreTree * tl )
inline

Constructor.

Parameters
dThe #define token.
tlThe remaining tokens of the line.

Member Function Documentation

◆ accept()

void Puma::PreDefineConstantDirective::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.