Puma Reference Manual | Puma::CT_IfElseStmt Class Reference |
Tree node representing a if-else-statement. More...
#include <Puma/CTree.h>
Public Member Functions | |
CT_IfElseStmt (CTree *i, CTree *o, CTree *cond, CTree *c, CTree *is, CTree *e, CTree *es) | |
Constructor. | |
const char * | NodeName () const |
Get the name of the node. | |
int | Sons () const |
Get the number of sons. | |
CTree * | Son (int n) const |
Get the n-th son. | |
CTree * | Condition () const |
Get the condition. | |
CT_Statement * | IfPart () const |
Get the statement controlled by the if-branch. | |
CT_Statement * | ElsePart () const |
Get the statement controlled by the else-branch. | |
void | ReplaceSon (CTree *old_son, CTree *new_son) |
Replace a son. | |
CSemScope * | SemScope () const |
Get the scope opened by the if-statement. | |
Static Public Member Functions | |
static const char * | NodeId () |
Get the identifier for this node type. |
Tree node representing a if-else-statement.
Example:
if(a==0) a++; else a=0;
Puma::CT_IfElseStmt::CT_IfElseStmt | ( | CTree * | i, |
CTree * | o, | ||
CTree * | cond, | ||
CTree * | c, | ||
CTree * | is, | ||
CTree * | e, | ||
CTree * | es | ||
) | [inline] |
Constructor.
i | The keyword 'if'. |
o | Left parenthesis before the condition. |
cond | The condition. |
c | Right parenthesis behind the condition. |
is | The statement controlled by the if-branch. |
e | The keyword 'else'. |
es | The statement controlled by the else-branch. |
CTree* Puma::CT_IfElseStmt::Condition | ( | ) | const [inline] |
Get the condition.
CT_Statement* Puma::CT_IfElseStmt::ElsePart | ( | ) | const [inline] |
Get the statement controlled by the else-branch.
CT_Statement* Puma::CT_IfElseStmt::IfPart | ( | ) | const [inline] |
Get the statement controlled by the if-branch.
static const char* Puma::CT_IfElseStmt::NodeId | ( | ) | [static] |
Get the identifier for this node type.
Can be compared with NodeName().
const char* Puma::CT_IfElseStmt::NodeName | ( | ) | const [inline, virtual] |
void Puma::CT_IfElseStmt::ReplaceSon | ( | CTree * | old_son, |
CTree * | new_son | ||
) | [inline, virtual] |
Replace a son.
old_son | The son to replace. |
new_son | The new son. |
Reimplemented from Puma::CTree.
CSemScope* Puma::CT_IfElseStmt::SemScope | ( | ) | const [inline, virtual] |
Get the scope opened by the if-statement.
Reimplemented from Puma::CTree.
CTree* Puma::CT_IfElseStmt::Son | ( | int | n | ) | const [inline, virtual] |
Get the n-th son.
n | The index of the son. |
Reimplemented from Puma::CTree.
int Puma::CT_IfElseStmt::Sons | ( | ) | const [inline, virtual] |
Get the number of sons.
Implements Puma::CTree.