Puma Reference Manual Puma::CT_NewExpr Class Reference



Puma::CT_NewExpr Class Reference

Tree node representing a new expression. More...

#include <Puma/CTree.h>

Inheritance diagram for Puma::CT_NewExpr:
Inheritance graph

List of all members.

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.
CTreeSon (int n) const
 Get the n-th son.
void ReplaceSon (CTree *old_son, CTree *new_son)
 Replace a son.
CT_SimpleNameOperName () const
 Get the operator name.
CT_ExprListPlacement () const
 Get the placement expression.
CT_ExprListInitializer () const
 Get the initializer.
CT_NamedTypeTypeName () const
 Get the type of the object to create.
CSemObjectSemObject () const
 Get the semantic information.

Static Public Member Functions

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

Detailed Description

Tree node representing a new expression.

Example:

 new A() 

Constructor & Destructor Documentation

Puma::CT_NewExpr::CT_NewExpr ( CTree op,
CTree p,
CTree o,
CTree t,
CTree c,
CTree i 
) [inline]

Constructor.

Parameters:
opThe new operator.
pThe optional placement expression.
oThe optional left parenthesis around the type identifier.
tThe type identifier specifying the type of the object to create.
cThe optional right parenthesis around the type identifier.
iThe optional initializer.

Member Function Documentation

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]

Get the name of the node.

Can be compared with NodeId().

Reimplemented from Puma::CT_Expression.

Get the operator name.

Get the placement expression.

void Puma::CT_NewExpr::ReplaceSon ( CTree old_son,
CTree new_son 
) [inline, virtual]

Replace a son.

Parameters:
old_sonThe son to replace.
new_sonThe 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.

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

Reimplemented from Puma::CTree.

int Puma::CT_NewExpr::Sons ( ) const [inline, virtual]

Get the number of sons.

Reimplemented from Puma::CT_Expression.

Get the type of the object to create.