![]() |
PUMA Library Reference Manual
|
#include <Puma/CTree.h>
Inheritance diagram for Puma::CT_Declarator:Base class for all tree nodes representing declarators.
Public Member Functions | |
| virtual CTree * | Declarator () const =0 |
| Get the declarator. | |
| virtual CT_Declarator * | IsDeclarator () |
| Get this. | |
| CT_SimpleName * | Name () |
| Get the declared name. | |
| CT_SimpleName * | Name (CT_Declarator *&last_declarator) |
| Get the declared name and set last_declarator to the declarator containing the name. | |
Public Member Functions inherited from Puma::CTree | |
| virtual | ~CTree () |
| Destructor. | |
| virtual int | Sons () const =0 |
| Get the number of sons. | |
| virtual CTree * | Son (int n) const |
| Get the n-th son. | |
| virtual const char * | NodeName () const =0 |
| Get the node name (node identifier). | |
| 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 void | ReplaceSon (CTree *old_son, CTree *new_son) |
| Replace a son. | |
| virtual CTree * | Parent () const |
| Get the parent node. | |
| virtual CTypeInfo * | Type () const |
| Get the semantic type of the node. | |
| virtual CExprValue * | Value () const |
| Get the calculated value of the expression. | |
| virtual CSemScope * | SemScope () const |
| Get the scope opened by the node. | |
| virtual CSemValue * | SemValue () const |
| Get the semantic value of 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_Statement * | IsStatement () |
| Get a pointer to CT_Statement if the current node represents a statement. | |
| virtual CT_Expression * | IsExpression () |
| Get a pointer to CT_Expression if the current node represents a expression. | |
| 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. | |
Protected Member Functions | |
| CT_Declarator () | |
| Constructor. | |
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. | |
Additional Inherited Members | |
Static Public Attributes inherited from Puma::CTree | |
| static int | alloc |
| static int | release |
|
inlineprotected |
Constructor.
|
pure virtual |
Get the declarator.
Implemented in Puma::CT_ArrayDeclarator, Puma::CT_BitFieldDeclarator, Puma::CT_BracedDeclarator, Puma::CT_FctDeclarator, Puma::CT_InitDeclarator, Puma::CT_MembPtrDeclarator, Puma::CT_PtrDeclarator, and Puma::CT_RefDeclarator.
|
inlinevirtual |
Get this.
Reimplemented from Puma::CTree.
| CT_SimpleName * Puma::CT_Declarator::Name | ( | ) |
Get the declared name.
| CT_SimpleName * Puma::CT_Declarator::Name | ( | CT_Declarator *& | last_declarator | ) |
Get the declared name and set last_declarator to the declarator containing the name.
| last_declarator | To be set to the declarator containing the name. |