Puma Reference Manual Puma::CT_ForStmt Class Reference



Puma::CT_ForStmt Class Reference

Tree node representing a for-statement. More...

#include <Puma/CTree.h>

Inheritance diagram for Puma::CT_ForStmt:
Inheritance graph

Public Member Functions

 CT_ForStmt (CTree *k, CTree *o, CTree *i, CTree *co, CTree *sc, CTree *e, CTree *c, CTree *stmt)
 Constructor. More...
 
const char * NodeName () const
 Get the name of the node. More...
 
int Sons () const
 Get the number of sons. More...
 
CTreeSon (int n) const
 Get the n-th son. More...
 
CTreeInitStmt () const
 Get the loop initializer. More...
 
CTreeCondition () const
 Get the loop condition. More...
 
CTreeExpr () const
 Get the loop counter expression. More...
 
CT_StatementStatement () const
 Get the controlled statement. More...
 
void ReplaceSon (CTree *old_son, CTree *new_son)
 Replace a son. More...
 
CSemScopeSemScope () const
 Get the scope opened by the for-statement. More...
 
- Public Member Functions inherited from Puma::CSemScope
 CSemScope ()
 Constructor. More...
 
void Scope (CStructure *s)
 Set the scope. More...
 
CStructureScope () const
 Get the scope. More...
 

Static Public Member Functions

static const char * NodeId ()
 Get the identifier for this node type. More...
 

Additional Inherited Members

- Static Public Attributes inherited from Puma::CTree
static int alloc
 
static int release
 
- Protected Member Functions inherited from Puma::CT_Statement
 CT_Statement ()
 Constructor. More...
 
virtual CT_StatementIsStatement ()
 Get this. More...
 

Detailed Description

Tree node representing a for-statement.

Example:

for(int i=0; i<10; i++) f(i);

Constructor & Destructor Documentation

Puma::CT_ForStmt::CT_ForStmt ( CTree k,
CTree o,
CTree i,
CTree co,
CTree sc,
CTree e,
CTree c,
CTree stmt 
)
inline

Constructor.

Parameters
kThe keyword 'for'.
oLeft parenthesis.
iThe loop initializer statement.
coThe loop condition.
scThe semi-colon behind the loop condition.
eThe loop counter expression.
cRight parenthesis.
stmtThe controlled statement.

Member Function Documentation

CTree* Puma::CT_ForStmt::Condition ( ) const
inline

Get the loop condition.

CTree* Puma::CT_ForStmt::Expr ( ) const
inline

Get the loop counter expression.

CTree* Puma::CT_ForStmt::InitStmt ( ) const
inline

Get the loop initializer.

static const char* Puma::CT_ForStmt::NodeId ( )
static

Get the identifier for this node type.

Can be compared with NodeName().

const char* Puma::CT_ForStmt::NodeName ( ) const
inlinevirtual

Get the name of the node.

Can be compared with NodeId().

Implements Puma::CTree.

void Puma::CT_ForStmt::ReplaceSon ( CTree old_son,
CTree new_son 
)
inlinevirtual

Replace a son.

Parameters
old_sonThe son to replace.
new_sonThe new son.

Reimplemented from Puma::CTree.

CSemScope* Puma::CT_ForStmt::SemScope ( ) const
inlinevirtual

Get the scope opened by the for-statement.

Reimplemented from Puma::CTree.

CTree* Puma::CT_ForStmt::Son ( int  n) const
inlinevirtual

Get the n-th son.

Parameters
nThe index of the son.
Returns
The n-th son or NULL.

Reimplemented from Puma::CTree.

int Puma::CT_ForStmt::Sons ( ) const
inlinevirtual

Get the number of sons.

Implements Puma::CTree.

CT_Statement* Puma::CT_ForStmt::Statement ( ) const
inline

Get the controlled statement.




Puma Reference Manual. Created on Sun Oct 13 2013.