|  | PUMA Library Reference Manual
    | 
#include <Puma/CTree.h>
 Inheritance diagram for Puma::CT_AlignofExpr:
 Inheritance diagram for Puma::CT_AlignofExpr:Tree node representing an alignof expression.
Example:
| Public Member Functions | |
| CT_AlignofExpr (CTree *k, CTree *o, CTree *t, CTree *c) | |
| Constructor. | |
| CT_AlignofExpr (CTree *k, CTree *e) | |
| 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. | |
| CTree * | Expr () const | 
| Get the expression. | |
| CT_NamedType * | TypeName () const | 
| Get the type name. | |
|  Public Member Functions inherited from Puma::CT_Expression | |
| CT_Expression () | |
| Constructor. | |
| const char * | NodeName () const | 
| Get the name of the node. | |
| int | Sons () const | 
| Get the number of sons. | |
| CTypeInfo * | Type () const | 
| Get the type of the expression. | |
| CExprValue * | Value () const | 
| Get the value of the expression. | |
| CSemValue * | SemValue () const | 
| Get the semantic value information of the expression. | |
| virtual CT_Expression * | IsExpression () | 
| Get this. | |
|  Public Member Functions inherited from Puma::CTree | |
| virtual | ~CTree () | 
| Destructor. | |
| virtual Token * | token () const | 
| Get the first token of the syntactic construct represented by this sub-tree. | |
| virtual Token * | end_token () const | 
| Get the last token of the syntactic construct represented by this sub-tree. | |
| virtual CT_Token * | token_node () const | 
| Get the CT_Token node of the first token of the syntactic construct represented by this sub-tree. | |
| virtual CT_Token * | end_token_node () const | 
| Get the CT_Token node of the last token of the syntactic construct represented by this sub-tree. | |
| virtual CTree * | Parent () const | 
| Get the parent node. | |
| virtual CSemScope * | SemScope () const | 
| Get the scope opened by the node. | |
| virtual CSemObject * | SemObject () const | 
| Get the semantic information of the node. | |
| virtual CT_SimpleName * | IsSimpleName () | 
| Get a pointer to CT_SimpleName if the current node represents a name. | |
| virtual CT_String * | IsString () | 
| Get a pointer to CT_String if the current node represents a string. | |
| virtual CT_Declarator * | IsDeclarator () | 
| Get a pointer to CT_Declarator if the current node represents a declarator. | |
| virtual CT_Statement * | IsStatement () | 
| Get a pointer to CT_Statement if the current node represents a statement. | |
| virtual CT_Decl * | IsDeclaration () | 
| Get a pointer to CT_Decl if the current node represents a declaration. | |
| virtual CT_Call * | IsCall () | 
| Get a pointer to CT_Call if the current node represents a call expression. | |
| virtual CT_List * | IsList () | 
| Get a pointer to CT_List if the current node represents a list. | |
| virtual CT_DelayedParse * | IsDelayedParse () | 
| Get a pointer to CT_DelayedParse if the current node represents a delayed code fragment. | |
| bool | HasValueNull () const | 
| Return true if the tree has the constant value 0. | |
|  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. | |
| CExprValue * | getValue () | 
| Get the semantic information about the value. | |
| CTypeInfo * | getType () | 
| Get the type of the value. | |
| Static Public Member Functions | |
| static const char * | NodeId () | 
| Get the identifier for this node type. | |
|  Static Public Member Functions inherited from Puma::CT_Expression | |
| static const char * | NodeId () | 
| Get the identifier for this node type. | |
| Additional Inherited Members | |
|  Static Public Attributes inherited from Puma::CTree | |
| static int | alloc | 
| static int | release | 
|  Protected Member Functions inherited from Puma::CTree | |
| CTree * | Son (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 | |
| CExprValue * | value | 
| The semantic value information object. | |
| CTypeInfo * | type | 
| The type information object. | |
Constructor.
| k | The 'alignof' keyword. | 
| o | Left parenthesis around the type name. | 
| t | The type from which to get the alignment. | 
| c | Right parenthesis around the type name. | 
Constructor.
| k | The 'alignof' keyword. | 
| e | The expression from which to get the alignment. | 
| 
 | inline | 
Get the expression.
| 
 | static | 
Get the identifier for this node type.
Can be compared with NodeName().
| 
 | inlinevirtual | 
Replace a son.
| old_son | The son to replace. | 
| new_son | The new son. | 
Reimplemented from Puma::CTree.
| 
 | inlinevirtual | 
Get the n-th son.
| n | The index of the son. | 
Reimplemented from Puma::CTree.
| 
 | inlinevirtual | 
Get the number of sons.
Implements Puma::CTree.
| 
 | inline | 
Get the type name.