ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rose_hash_multimap Class Reference

Hash table support for symbol tables within ROSE. More...

#include <Cxx_Grammar.h>

Inheritance diagram for rose_hash_multimap:
Collaboration diagram for rose_hash_multimap:

Public Member Functions

 rose_hash_multimap ()
 
 rose_hash_multimap (int sz)
 
 rose_hash_multimap (const rose_hash_multimap &rhs)
 
void set_parent (SgNode *new_parent)
 
SgNodeget_parent () const
 
void set_case_insensitive_semantics (bool b)
 
bool get_case_insensitive_semantics () const
 
void delete_elements ()
 
 ~rose_hash_multimap ()
 

Protected Attributes

SgNodeparent
 
bool case_insensitive_semantics
 

Friends

class AST_FILE_IO
 
class SgSymbolTableStorageClass
 
class EasyStorage< rose_hash_multimap * >
 

Detailed Description

Hash table support for symbol tables within ROSE.

This hash table support is used by the symbol tables within ROSE. There is one global symbol table for all function symbols and then there symbol tables for each scope (implemented in the SgScopeDeclaration).

Trivia: The first version was developed by Alin Jula, and as payment I bought him dinner when Ken Kennedy visited LLNL (summer of 2005).

Definition at line 16980 of file Cxx_Grammar.h.

Constructor & Destructor Documentation

rose_hash_multimap::rose_hash_multimap ( )
inline

Definition at line 17005 of file Cxx_Grammar.h.

rose_hash_multimap::rose_hash_multimap ( int  sz)
inline

Definition at line 17010 of file Cxx_Grammar.h.

rose_hash_multimap::rose_hash_multimap ( const rose_hash_multimap rhs)
inline

Definition at line 17014 of file Cxx_Grammar.h.

rose_hash_multimap::~rose_hash_multimap ( )
inline

Definition at line 17053 of file Cxx_Grammar.h.

References delete_elements(), and parent.

Member Function Documentation

void rose_hash_multimap::set_parent ( SgNode new_parent)
inline

Definition at line 17018 of file Cxx_Grammar.h.

References parent.

SgNode* rose_hash_multimap::get_parent ( ) const
inline

Definition at line 17023 of file Cxx_Grammar.h.

References parent.

void rose_hash_multimap::set_case_insensitive_semantics ( bool  b)
inline

Definition at line 17029 of file Cxx_Grammar.h.

References case_insensitive_semantics.

bool rose_hash_multimap::get_case_insensitive_semantics ( ) const
inline

Definition at line 17035 of file Cxx_Grammar.h.

References case_insensitive_semantics.

void rose_hash_multimap::delete_elements ( )
inline

Definition at line 17040 of file Cxx_Grammar.h.

Referenced by ~rose_hash_multimap().

Friends And Related Function Documentation

friend class AST_FILE_IO
friend

Definition at line 17062 of file Cxx_Grammar.h.

friend class SgSymbolTableStorageClass
friend

Definition at line 17063 of file Cxx_Grammar.h.

friend class EasyStorage< rose_hash_multimap * >
friend

Definition at line 17064 of file Cxx_Grammar.h.

Member Data Documentation

SgNode* rose_hash_multimap::parent
protected

Definition at line 16983 of file Cxx_Grammar.h.

Referenced by get_parent(), set_parent(), and ~rose_hash_multimap().

bool rose_hash_multimap::case_insensitive_semantics
protected

The documentation for this class was generated from the following file: