|
virtual SgNode * | copy (SgCopyHelp &help) const |
| This function clones the current IR node object recursively or not, depending on the argument. More...
|
|
void | post_construction_initialization () |
| Final initialization for constructors This function is called at the end of generated constructors to allow the specification writer to add special initialization functions or tests. Default is to do nothing. Otherwise it should be overridden in the spec file, in NewHeaderCode/NewOutlinedCode. More...
|
|
virtual std::string | class_name () const |
| Copies AST (whole subtree, depending on the SgCopyHelp class. More...
|
|
virtual VariantT | variantT () const |
| returns new style SageIII enum values More...
|
|
void * | operator new (size_t size) |
| returns pointer to newly allocated IR node More...
|
|
void | operator delete (void *pointer, size_t size) |
| deallocated memory for IR node (returns memory to memory pool for reuse) More...
|
|
void | operator delete (void *pointer) |
|
virtual std::vector< SgNode * > | get_traversalSuccessorContainer () |
| FOR INTERNAL USE within ROSE traverals mechanism only. More...
|
|
virtual std::vector< std::string > | get_traversalSuccessorNamesContainer () |
| FOR INTERNAL USE within ROSE traverals mechanism only. More...
|
|
virtual size_t | get_numberOfTraversalSuccessors () |
|
virtual SgNode * | get_traversalSuccessorByIndex (size_t idx) |
|
virtual size_t | get_childIndex (SgNode *child) |
|
virtual RTIReturnType | roseRTI () |
| FOR INTERNAL USE Access to Runtime Type Information (RTI) for this IR nodes. More...
|
|
virtual const char * | sage_class_name () const ROSE_DEPRECATED_FUNCTION |
|
void | executeVisitorMemberFunction (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
virtual void | accept (ROSE_VisitorPattern &visitor) |
| DXN (08/09/2010): support for the classic visitor pattern done in GoF. More...
|
|
virtual bool | isInMemoryPool () |
| FOR INTERNAL USE This is used in internal tests to verify that all IR nodes are allocated from the heap. More...
|
|
virtual void | checkDataMemberPointersIfInMemoryPool () |
| FOR INTERNAL USE This is used in internal tests to verify that all IR nodes are allocated from the heap. More...
|
|
virtual std::vector< std::pair
< SgNode *, std::string > > | returnDataMemberPointers () const |
| FOR INTERNAL USE Returns STL vector of pairs of SgNode* and strings for use in AST tools More...
|
|
virtual void | processDataMemberReferenceToPointers (ReferenceToPointerHandler *) |
| FOR INTERNAL USE Processes pairs of references to SgNode* and strings for use in AST tools More...
|
|
virtual long | getChildIndex (SgNode *childNode) const |
| FOR INTERNAL USE Returns a unique index value for the childNode in the list of children at this IR node. More...
|
|
| SgNamespaceSymbol (const SgNamespaceSymbolStorageClass &source) |
|
SgNamespaceSymbol * | addRegExpAttribute (std::string s, AstRegExAttribute *a) |
| Support for AST matching using regular expression. More...
|
|
SgName | get_name () const |
| Access function for getting name stored internally (not the one in the declaration). More...
|
|
SgNode * | get_symbol_basis () const |
|
SgType * | get_type () const |
| This function returns the type associated with the named entity. More...
|
|
SgNamespaceDeclarationStatement * | get_declaration () const |
| Access function for getting the declaration of the original namespace. More...
|
|
void | set_declaration (SgNamespaceDeclarationStatement *declaration) |
| Access function for setting the declaration stored internally. More...
|
|
SgNamespaceAliasDeclarationStatement * | get_aliasDeclaration () const |
|
void | set_aliasDeclaration (SgNamespaceAliasDeclarationStatement *aliasDeclaration) |
|
bool | get_isAlias () const |
|
void | set_isAlias (bool isAlias) |
|
virtual | ~SgNamespaceSymbol () |
| This is the destructor. More...
|
|
| SgNamespaceSymbol (SgName name="", SgNamespaceDeclarationStatement *declaration=NULL, SgNamespaceAliasDeclarationStatement *aliasDeclaration=NULL, bool isAlias=false) |
|
virtual SgScopeStatement * | get_scope () const |
|
SgName | get_mangled_name () const |
|
SgDeclarationStatement * | get_declaration () const |
|
virtual void | addNewAttribute (std::string s, AstAttribute *a) |
| Add a new attribute represented by the named string. More...
|
|
virtual AstAttribute * | getAttribute (std::string s) const |
| Returns attribute of name 's'. More...
|
|
virtual void | updateAttribute (std::string s, AstAttribute *a) |
| Replace existing attribute of name 's' with new AstAttribute. More...
|
|
virtual void | setAttribute (std::string s, AstAttribute *a) |
| This is a wrapper function with the following semantics: if no attribute of name 's' exists then addNewAttribute(s,a); is called, otherwise updateAttribute(s,a); is called. More...
|
|
virtual void | removeAttribute (std::string s) |
| Remove attribute of name 's' if present. More...
|
|
virtual bool | attributeExists (std::string s) const |
| Tests if attribute of name 's' is present. More...
|
|
virtual int | numberOfAttributes () const |
| Returns the number of attributes on this IR node. More...
|
|
void * | operator new (size_t size) |
| returns pointer to newly allocated IR node More...
|
|
void | operator delete (void *pointer, size_t size) |
| deallocated memory for IR node (returns memory to memory pool for reuse) More...
|
|
void | operator delete (void *pointer) |
|
void | executeVisitorMemberFunction (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
| SgSymbol (const SgSymbolStorageClass &source) |
|
SgSymbol * | addRegExpAttribute (std::string s, AstRegExAttribute *a) |
| Support for AST matching using regular expression. More...
|
|
AstAttributeMechanism * | get_attributeMechanism () const |
| FOR INTERNAL USE Access function; if an attribute exists then a pointer to it is returned, else error. More...
|
|
void | set_attributeMechanism (AstAttributeMechanism *attributeMechanism) |
| FOR INTERNAL USE Access function; sets poiner to value AstAttributeMechanism. More...
|
|
virtual | ~SgSymbol () |
| This is the destructor. More...
|
|
| SgSymbol () |
| This is the default constructor. More...
|
|
void * | operator new (size_t size) |
| returns pointer to newly allocated IR node More...
|
|
void | operator delete (void *pointer, size_t size) |
| deallocated memory for IR node (returns memory to memory pool for reuse) More...
|
|
void | operator delete (void *pointer) |
|
void | executeVisitorMemberFunction (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
| SgNode (const SgNodeStorageClass &source) |
|
SgNode * | addRegExpAttribute (std::string s, AstRegExAttribute *a) |
| Support for AST matching using regular expression. More...
|
|
void | set_isModified (bool isModified) |
| All nodes in the AST contain a isModified flag used to track changes to the AST. More...
|
|
bool | get_isModified () const |
| Acess function for isModified flag This flag records if the current IR node has been modified. It is set to false after and ROSE front-end processing. More...
|
|
void | set_parent (SgNode *parent) |
| All nodes in the AST contain a reference to a parent node. More...
|
|
SgNode * | get_parent () const |
| Access function for parent node. More...
|
|
bool | isChild (SgNode *node) const |
| Query function for if the input IR nodes is a child of the current IR node. More...
|
|
virtual std::string | unparseToString (SgUnparse_Info *info) const |
| This function unparses the AST node (excluding comments and unnecessary white space) More...
|
|
std::string | unparseToString () const |
|
std::string | unparseToCompleteString () |
| This function unparses the AST node (including comments and white space) More...
|
|
int | variant () const ROSE_DEPRECATED_FUNCTION |
| Older version function returns enum value "NODE". More...
|
|
virtual void | fixupCopy (SgNode *copy, SgCopyHelp &help) const |
|
virtual Sg_File_Info * | get_file_info (void) const |
| File information containing filename, line number, column number, and if the SgNode is a part of a new transformation, etc. More...
|
|
virtual Sg_File_Info * | get_startOfConstruct (void) const |
| New function interface for Sg_File_Info data stores starting location of contruct (typically the opening brace or first letter of keyword). More...
|
|
virtual Sg_File_Info * | get_endOfConstruct (void) const |
| New function interface for Sg_File_Info data stores ending location of contruct (typically the closing brace). More...
|
|
VirtualCFG::CFGNode | cfgForBeginning () |
| Returns the CFG node for just before this AST node. More...
|
|
VirtualCFG::CFGNode | cfgForEnd () |
| Returns the CFG node for just after this AST node. More...
|
|
virtual unsigned int | cfgIndexForEnd () const |
| Determine the CFG index for the end of this construct. More...
|
|
virtual bool | cfgIsIndexInteresting (unsigned int index) const |
| Determine whether a particular CFG node index is "interesting" for this kind of node. More...
|
|
virtual unsigned int | cfgFindChildIndex (SgNode *n) |
| Find the index of n in this node's CFG children. More...
|
|
virtual unsigned int | cfgFindNextChildIndex (SgNode *n) |
| Find the index just after n in this node's CFG children. More...
|
|
virtual std::vector
< VirtualCFG::CFGEdge > | cfgOutEdges (unsigned int index=false) |
| Find the out edges of a CFG node – internal version. More...
|
|
virtual std::vector
< VirtualCFG::CFGEdge > | cfgInEdges (unsigned int index=false) |
| Find the in edges of a CFG node – internal version. More...
|
|
int | numberOfNodesInSubtree () |
| Computes the number of nodes in the defined subtree of the AST. More...
|
|
int | depthOfSubtree () |
| Computes the depth of the current defined subtree of the AST. More...
|
|
SgNode * | get_freepointer () const |
|
void | set_freepointer (SgNode *freepointer) |
|
virtual | ~SgNode () |
| This is the destructor. More...
|
|
| SgNode () |
| This is the constructor. More...
|
|
bool | get_isVisited () const ROSE_DEPRECATED_FUNCTION |
| DOCS IN HEADER: Access function for p_isVisited flag used previously by the AST traversals. More...
|
|
void | set_isVisited (bool isVisited) ROSE_DEPRECATED_FUNCTION |
| Access function for p_isVisited flag used previously by the AST traversals. More...
|
|
|
static size_t | numberOfNodes () |
| Returns the total number of IR nodes of this type. More...
|
|
static size_t | memoryUsage () |
| Returns the size in bytes of the total memory allocated for all IR nodes of this type. More...
|
|
static void | traverseMemoryPoolNodes (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | traverseMemoryPoolVisitorPattern (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | visitRepresentativeNode (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for type-based traversal. More...
|
|
static size_t | numberOfNodes () |
| Returns the total number of IR nodes of this type. More...
|
|
static size_t | memoryUsage () |
| Returns the size in bytes of the total memory allocated for all IR nodes of this type. More...
|
|
static void | traverseMemoryPoolNodes (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | traverseMemoryPoolVisitorPattern (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | visitRepresentativeNode (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for type-based traversal. More...
|
|
static size_t | numberOfNodes () |
| Returns the total number of IR nodes of this type. More...
|
|
static size_t | memoryUsage () |
| Returns the size in bytes of the total memory allocated for all IR nodes of this type. More...
|
|
static void | traverseMemoryPoolNodes (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | traverseMemoryPoolVisitorPattern (ROSE_VisitorPattern &visitor) |
| FOR INTERNAL USE Support for visitor pattern. More...
|
|
static void | visitRepresentativeNode (ROSE_VisitTraversal &visit) |
| FOR INTERNAL USE Support for type-based traversal. More...
|
|
static std::vector< std::string > | buildCommandLineToSubstituteTransformationFile (const std::vector< std::string > &argv, std::string newFileName) |
| Command line support for this compilation The command line is saved as a static variable so that it will be available to support the rewrite mechanism. More...
|
|
static std::vector< VariantT > | getClassHierarchySubTreeFunction (VariantT v) |
|
static void | getClassHierarchySubTreeFunction (VariantT v, std::vector< VariantT > &) |
|
static std::map< SgNode
*, std::string > & | get_globalMangledNameMap () |
| Access function for performance optimizing global mangled name map. More...
|
|
static void | clearGlobalMangledNameMap () |
| Support to clear the performance optimizing global mangled name map. More...
|
|
static std::map< std::string,
int > & | get_shortMangledNameCache () |
| Access function for lower level optimizing of global mangled name map. More...
|
|
static std::map< SgNode
*, std::string > & | get_globalQualifiedNameMapForNames () |
| Access function for name qualification support (for names). More...
|
|
static void | set_globalQualifiedNameMapForNames (const std::map< SgNode *, std::string > &X) |
| Access function for name qualification support (for names). More...
|
|
static std::map< SgNode
*, std::string > & | get_globalQualifiedNameMapForTypes () |
| Access function for name qualification support (for type). More...
|
|
static void | set_globalQualifiedNameMapForTypes (const std::map< SgNode *, std::string > &X) |
| Access function for name qualification support (for type). More...
|
|
static std::map< SgNode
*, std::string > & | get_globalTypeNameMap () |
| Access function for name qualification support (for names of types). More...
|
|
static void | set_globalTypeNameMap (const std::map< SgNode *, std::string > &X) |
| Access function for name qualification support (for names of types). More...
|
|
static SgFunctionTypeTable * | get_globalFunctionTypeTable () |
| Access function for symbol table specific to function types. More...
|
|
static void | set_globalFunctionTypeTable (SgFunctionTypeTable *globalFunctionTypeTable) |
| Access function for symbol table specific to function types. More...
|
|
static SgTypeTable * | get_globalTypeTable () |
| Access function for symbol table specific to non-function types. More...
|
|
static void | set_globalTypeTable (SgTypeTable *globalTypeTable) |
| Access function for symbol table specific to non-function types. More...
|
|
This class represents the concept of a namespace name within the compiler.
This symbol holds a reference to a SgNamespaceDeclarationStatement and also any of its alias (referencing a SgNamespaceAliasDeclarationStatement).
The constructor for this symbol takes a name and a declaration. The reason is that it is used to handle the case of a namespace alias which uses the same symbol but uses a different name. I'm not certain that this is the best implementation since it stores the symbol in the symbol table under two names. It is not clear if that would be clear if the name were changes and this could cause the symbol table to not be completely removed from the symbol table.
- Todo:
- It might be that we should have a SgNamespaceAliasSymbol so that namespace aliasing can be better supported. We can consider this for future work.
- See Also
- SgSymbol for more details about symbols and why they are used in ROSE.
-
Example of using a SgNamespaceSymbol object
Definition at line 247904 of file Cxx_Grammar.h.