| Puma Reference Manual | Puma::CT_SimpleName Class Reference |
Base class for all tree nodes representing a name. More...
#include <Puma/CTree.h>

Public Member Functions | |
| CT_SimpleName (CTree *n) | |
| Constructor. More... | |
| const char * | NodeName () const |
| Get the name of the node. More... | |
| virtual const char * | Text () const |
| Get the string containing the name. More... | |
| virtual void | print (ostream &os) const |
| Print the name on the given stream. More... | |
| virtual CT_SimpleName * | Name () const |
| Get this. More... | |
| CTypeInfo * | Type () const |
| Get the type of the entity represented by the name. More... | |
| CExprValue * | Value () const |
| Get the value of the entity represented by the name. More... | |
| CSemValue * | SemValue () const |
| Get the sematic value information of the name. More... | |
| CSemObject * | SemObject () const |
| Get the sematic information about the name. More... | |
| virtual CT_SimpleName * | IsSimpleName () |
| Get this. More... | |
| void * | operator new (size_t) |
| Own new operator reusing memory. More... | |
| void | operator delete (void *) |
| Own delete operator. More... | |
Public Member Functions inherited from Puma::CT_List | |
| CT_List * | IsList () |
| Get a pointer to this CT_List. More... | |
| int | Entries () const |
| Get the number of list entries. More... | |
| CTree * | Entry (int n) const |
| Get the n-th list entry. More... | |
| int | Sons () const |
| Get the number of sons. More... | |
| CTree * | Son (int n) const |
| Get the n-th son. More... | |
| int | Index (CTree *son) |
| Get the index of the given son, or -1 if not found. More... | |
| int | GetProperties () const |
| Get the list properties. More... | |
| void | AddProperties (int p) |
| Add a list property. More... | |
| void | AddSon (CTree *s) |
| Add a son. More... | |
| void | PrefixSon (CTree *s) |
| Prepend a son. More... | |
| void | InsertSon (CTree *before, CTree *son) |
| Insert a son before another son. More... | |
| void | ReplaceSon (CTree *old_son, CTree *new_son) |
| Replace a son. More... | |
| void | RemoveSon (CTree *son) |
| Remove a son. More... | |
| void | InsertSon (int idx, CTree *s) |
| Insert a son at the given index. More... | |
| void | ReplaceSon (int idx, CTree *s) |
| Replace the son at the given index. More... | |
| void | RemoveSon (int idx) |
| Remove the son at the given index. More... | |
Public Member Functions inherited from Puma::CTree | |
| virtual | ~CTree () |
| Destructor. More... | |
| virtual Token * | token () const |
| Get the first token of the syntactic construct represented by this sub-tree. More... | |
| virtual Token * | end_token () const |
| Get the last token of the syntactic construct represented by this sub-tree. More... | |
| virtual CT_Token * | token_node () const |
| Get the CT_Token node of the first token of the syntactic construct represented by this sub-tree. More... | |
| 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. More... | |
| virtual CTree * | Parent () const |
| Get the parent node. More... | |
| virtual CSemScope * | SemScope () const |
| Get the scope opened by the node. More... | |
| virtual CT_String * | IsString () |
| Get a pointer to CT_String if the current node represents a string. More... | |
| virtual CT_Declarator * | IsDeclarator () |
| Get a pointer to CT_Declarator if the current node represents a declarator. More... | |
| virtual CT_Statement * | IsStatement () |
| Get a pointer to CT_Statement if the current node represents a statement. More... | |
| virtual CT_Expression * | IsExpression () |
| Get a pointer to CT_Expression if the current node represents a expression. More... | |
| virtual CT_Decl * | IsDeclaration () |
| Get a pointer to CT_Decl if the current node represents a declaration. More... | |
| virtual CT_Call * | IsCall () |
| Get a pointer to CT_Call if the current node represents a call expression. More... | |
| virtual CT_DelayedParse * | IsDelayedParse () |
| Get a pointer to CT_DelayedParse if the current node represents a delayed code fragment. More... | |
| bool | HasValueNull () const |
| Return true if the tree has the constant value 0. More... | |
Public Member Functions inherited from Puma::Printable | |
| virtual | ~Printable () |
| Destructor. More... | |
Public Member Functions inherited from Puma::CSemValue | |
| CSemValue () | |
| Constructor. More... | |
| virtual | ~CSemValue () |
| Destructor. More... | |
| void | setValue (CExprValue *v) |
| Set the semantic value information object. More... | |
| void | setValueRef (CExprValue *v) |
| Set the semantic value information object as reference. More... | |
| void | setType (CTypeInfo *t) |
| Set the type information object. More... | |
| void | setTypeRef (CTypeInfo *t) |
| Set the type information object as reference. More... | |
| CExprValue * | getValue () |
| Get the semantic information about the value. More... | |
| CTypeInfo * | getType () |
| Get the type of the value. More... | |
Public Member Functions inherited from Puma::CSemObject | |
| CSemObject () | |
| Constructor. More... | |
| void | Object (CObjectInfo *o) |
| Set the semantic information object for the entity. More... | |
| CObjectInfo * | Object () const |
| Get the semantic information object. More... | |
Static Public Member Functions | |
| static const char * | NodeId () |
| Get the identifier for this node type. More... | |
Protected Member Functions | |
| CT_SimpleName (int size) | |
| Constructor. More... | |
| CT_SimpleName (int size, int properties) | |
| Constructor. More... | |
Protected Member Functions inherited from Puma::CT_List | |
| CT_List (int size=5, int incr=5, int props=0) | |
| Constructor. More... | |
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. More... | |
| int | Sons (CTree *const *sons, int len) const |
| Get the number of sons in the given sons array. More... | |
| void | ReplaceSon (CTree **sons, int len, CTree *old_son, CTree *new_son) |
| Replace a son. More... | |
| void | ReplaceSon (CTree *&son, CTree *old_son, CTree *new_son) |
| Replace a son if it equals the given son. More... | |
| void | AddSon (CTree *&son, CTree *new_son) |
| Add a new son. More... | |
| void | SetParent (const CTree *parent) |
| Set the parent tree node. More... | |
| void | SetParent (CTree *node, const CTree *parent) |
| Set the parent tree node of the given tree node. More... | |
| CTree () | |
| Default constructor. More... | |
Additional Inherited Members | |
Public Types inherited from Puma::CT_List | |
| enum | { OPEN = 1, CLOSE = 2, OPEN_CLOSE = 3, SEPARATORS = 4, FORCE_EMPTY = 8, END_SEP = 16, NO_LAST_SEP = 32, INTRO = 64 } |
| List properties. More... | |
Static Public Attributes inherited from Puma::CTree | |
| static int | alloc |
| static int | release |
Protected Attributes inherited from Puma::CSemValue | |
| CExprValue * | value |
| The semantic value information object. More... | |
| CTypeInfo * | type |
| The type information object. More... | |
Base class for all tree nodes representing a name.
Example:
|
inlineprotected |
Constructor.
| size | The number of sub-names (for qualified names). |
|
inlineprotected |
Constructor.
| size | The number of sub-names (for qualified names). |
| properties | Additional name list properties (for root qualified names). |
|
inline |
Constructor.
| n | The sub-tree containing the name. |
|
inlinevirtual |
Get this.
Reimplemented from Puma::CTree.
|
inlinevirtual |
Get this.
Reimplemented in Puma::CT_QualName.
|
static |
Get the identifier for this node type.
Can be compared with NodeName().
|
inlinevirtual |
Get the name of the node.
Can be compared with NodeId().
Implements Puma::CTree.
Reimplemented in Puma::CT_RootQualName, Puma::CT_QualName, Puma::CT_ConversionName, Puma::CT_OperatorName, Puma::CT_TemplateName, Puma::CT_DestructorName, and Puma::CT_PrivateName.
| void Puma::CT_SimpleName::operator delete | ( | void * | ) |
Own delete operator.
| void* Puma::CT_SimpleName::operator new | ( | size_t | ) |
Own new operator reusing memory.
|
inlinevirtual |
Print the name on the given stream.
| os | The output stream. |
Implements Puma::Printable.
Reimplemented in Puma::CT_QualName.
|
inlinevirtual |
Get the sematic information about the name.
Reimplemented from Puma::CTree.
Reimplemented in Puma::CT_QualName.
|
inlinevirtual |
Get the sematic value information of the name.
Reimplemented from Puma::CTree.
Reimplemented in Puma::CT_QualName.
|
inlinevirtual |
Get the string containing the name.
Reimplemented in Puma::CT_QualName, Puma::CT_TemplateName, and Puma::CT_SpecialName.
|
inlinevirtual |
Get the type of the entity represented by the name.
Reimplemented from Puma::CTree.
Reimplemented in Puma::CT_QualName.
|
inlinevirtual |
Get the value of the entity represented by the name.
Reimplemented from Puma::CTree.
Reimplemented in Puma::CT_QualName.