Puma Reference Manual Puma::CT_GnuTypeof Class Reference



Puma::CT_GnuTypeof Class Reference

Tree node representing a typeof expression. More...

#include <Puma/GnuCTree.h>

Inheritance diagram for Puma::CT_GnuTypeof:
Inheritance graph

List of all members.

Public Member Functions

 CT_GnuTypeof (CTree *k, CTree *o, CTree *t, CTree *c)
 Constructor.
 CT_GnuTypeof (CTree *k, CTree *e)
 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.
CTreeExpr () const
 Get the expression from which to get the type string.
CT_NamedTypeTypeName () const
 Get the type from which to get the type string.
CSemValueSemValue () const
 Get the semantic value information.
CTypeInfoType () const
 Get the resulting type.
- Public Member Functions inherited from Puma::CSemValue
 CSemValue ()
 Constructor.
virtual ~CSemValue ()
 Destructor.
void setValue (CExprValue *v)
 Set the semantic value information object.
void setValueRef (CExprValue *v)
 Set the semantic value information object as reference.
void setType (CTypeInfo *t)
 Set the type information object.
void setTypeRef (CTypeInfo *t)
 Set the type information object as reference.
CExprValuegetValue ()
 Get the semantic information about the value.
CTypeInfogetType ()
 Get the type of the value.

Static Public Member Functions

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

Additional Inherited Members

- Protected Member Functions inherited from Puma::CT_DeclSpec
 CT_DeclSpec ()
 Constructor.
- Protected Member Functions inherited from Puma::CTree
CTreeSon (CTree *const *sons, int len, int n) const
 Get the n-th son from given sons array.
int Sons (CTree *const *sons, int len) const
 Get the number of sons in the given sons array.
void ReplaceSon (CTree **sons, int len, CTree *old_son, CTree *new_son)
 Replace a son.
void ReplaceSon (CTree *&son, CTree *old_son, CTree *new_son)
 Replace a son if it equals the given son.
void AddSon (CTree *&son, CTree *new_son)
 Add a new son.
void SetParent (const CTree *parent)
 Set the parent tree node.
void SetParent (CTree *node, const CTree *parent)
 Set the parent tree node of the given tree node.
 CTree ()
 Default constructor.
- Protected Attributes inherited from Puma::CSemValue
CExprValuevalue
 The semantic value information object.
CTypeInfotype
 The type information object.

Detailed Description

Tree node representing a typeof expression.

Example:

typeof(a+b)

Constructor & Destructor Documentation

Puma::CT_GnuTypeof::CT_GnuTypeof ( CTree k,
CTree o,
CTree t,
CTree c 
)
inline

Constructor.

Parameters:
kThe keyword 'typeof'.
oLeft parenthesis before the type.
tThe type from which to get the type string.
cRight parenthesis behind the type.
Puma::CT_GnuTypeof::CT_GnuTypeof ( CTree k,
CTree e 
)
inline

Constructor.

Parameters:
kThe keyword 'typeof'.
eThe expression from which to get the type string.

Member Function Documentation

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

Get the expression from which to get the type string.

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

Get the identifier for this node type.

Can be compared with NodeName().

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

Get the name of the node.

Can be compared with NodeId().

Implements Puma::CTree.

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

CSemValue* Puma::CT_GnuTypeof::SemValue ( ) const
inlinevirtual

Get the semantic value information.

Reimplemented from Puma::CTree.

CTree* Puma::CT_GnuTypeof::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_GnuTypeof::Sons ( ) const
inlinevirtual

Get the number of sons.

Implements Puma::CTree.

CTypeInfo* Puma::CT_GnuTypeof::Type ( ) const
inlinevirtual

Get the resulting type.

Reimplemented from Puma::CTree.

CT_NamedType* Puma::CT_GnuTypeof::TypeName ( ) const
inline

Get the type from which to get the type string.




Puma Reference Manual. Created on Sun Jul 1 2012.