Puma Reference Manual | Puma::CT_NewExpr Class Reference |
Tree node representing a new expression. More...
#include <Puma/CTree.h>
Public Member Functions | |
CT_NewExpr (CTree *op, CTree *p, CTree *o, CTree *t, CTree *c, CTree *i) | |
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. | |
void | ReplaceSon (CTree *old_son, CTree *new_son) |
Replace a son. | |
CT_SimpleName * | OperName () const |
Get the operator name. | |
CT_ExprList * | Placement () const |
Get the placement expression. | |
CT_ExprList * | Initializer () const |
Get the initializer. | |
CT_NamedType * | TypeName () const |
Get the type of the object to create. | |
CSemObject * | SemObject () const |
Get the semantic information. | |
Static Public Member Functions | |
static const char * | NodeId () |
Get the identifier for this node type. |
Tree node representing a new expression.
Example:
new A()
Puma::CT_NewExpr::CT_NewExpr | ( | CTree * | op, |
CTree * | p, | ||
CTree * | o, | ||
CTree * | t, | ||
CTree * | c, | ||
CTree * | i | ||
) | [inline] |
Constructor.
op | The new operator. |
p | The optional placement expression. |
o | The optional left parenthesis around the type identifier. |
t | The type identifier specifying the type of the object to create. |
c | The optional right parenthesis around the type identifier. |
i | The optional initializer. |
CT_ExprList* Puma::CT_NewExpr::Initializer | ( | ) | const [inline] |
Get the initializer.
static const char* Puma::CT_NewExpr::NodeId | ( | ) | [static] |
Get the identifier for this node type.
Can be compared with NodeName().
Reimplemented from Puma::CT_Expression.
const char* Puma::CT_NewExpr::NodeName | ( | ) | const [inline, virtual] |
CT_SimpleName* Puma::CT_NewExpr::OperName | ( | ) | const [inline] |
Get the operator name.
CT_ExprList* Puma::CT_NewExpr::Placement | ( | ) | const [inline] |
Get the placement expression.
void Puma::CT_NewExpr::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.
CSemObject* Puma::CT_NewExpr::SemObject | ( | ) | const [inline, virtual] |
Get the semantic information.
Reimplemented from Puma::CTree.
CTree* Puma::CT_NewExpr::Son | ( | int | n | ) | const [inline, virtual] |
Get the n-th son.
n | The index of the son. |
Reimplemented from Puma::CTree.
int Puma::CT_NewExpr::Sons | ( | ) | const [inline, virtual] |
Get the number of sons.
Reimplemented from Puma::CT_Expression.
CT_NamedType* Puma::CT_NewExpr::TypeName | ( | ) | const [inline] |
Get the type of the object to create.