WSF
UsSymbolTable Class Reference

#include <UsSymbolTable.hpp>

Collaboration diagram for UsSymbolTable:

Classes

Public Types

enum  TableLinkage {
  cOPEN_NEW_SCOPE = 0x1 , cADD_DEPTH_FLAG = 0x2 , cTRANSPARENT_COPY = 0 , cLOCAL_SCOPE = cOPEN_NEW_SCOPE ,
  cNEW_SCOPE = cADD_DEPTH_FLAG | cOPEN_NEW_SCOPE
}
typedef std::map< std::string, UsSymbolEntryMap

Public Member Functions

 UsSymbolTable (UsSymbolTablePool *aPoolPtr)
UsSymbolTableAddInner (TableLinkage aLinkage)
void AddOuter (TableLinkage aLinkage, UsSymbolTable *aSymbolTablePtr)
UsSymbolSearch (const std::string &aName, int aDepth=1, int aSequenceNumberLimit=0x7fffffff)
UsSymbolSearchTransCopy (const std::string &aName, int aSequenceNumberLimit=0x7fffffff)
UsSymbolTableGetParentScope ()
UsSymbolTableGetParent () const
bool IsInheriting (UsSymbolTable *aParent)
 UT_MEMORY_DEBUG_MARKER (cMDB_UsSymbolTable)

Public Attributes

std::vector< TableLinkmOuterScopes
std::vector< TableLinkmInnerScopes
EntryMap mEntries
UsTypemThisTypePtr
UsSymbolTablePoolmPoolPtr

Member Typedef Documentation

◆ EntryMap

typedef std::map<std::string, UsSymbol> UsSymbolTable::EntryMap

Member Enumeration Documentation

◆ TableLinkage

Enumerator
cOPEN_NEW_SCOPE 
cADD_DEPTH_FLAG 
cTRANSPARENT_COPY 
cLOCAL_SCOPE 
cNEW_SCOPE 

Constructor & Destructor Documentation

◆ UsSymbolTable()

UsSymbolTable::UsSymbolTable ( UsSymbolTablePool * aPoolPtr)
inlineexplicit

References mPoolPtr, and mThisTypePtr.

Member Function Documentation

◆ AddInner()

UsSymbolTable * UsSymbolTable::AddInner ( TableLinkage aLinkage)

References AddOuter(), mInnerScopes, and mPoolPtr.

Referenced by Us::UsCtx::UsCtx().

◆ AddOuter()

void UsSymbolTable::AddOuter ( TableLinkage aLinkage,
UsSymbolTable * aSymbolTablePtr )

References cTRANSPARENT_COPY, mOuterScopes, and mThisTypePtr.

Referenced by AddInner().

◆ GetParent()

◆ GetParentScope()

UsSymbolTable * UsSymbolTable::GetParentScope ( )
inline

References mOuterScopes.

◆ IsInheriting()

bool UsSymbolTable::IsInheriting ( UsSymbolTable * aParent)
inline

◆ Search()

UsSymbol * UsSymbolTable::Search ( const std::string & aName,
int aDepth = 1,
int aSequenceNumberLimit = 0x7fffffff )

◆ SearchTransCopy()

UsSymbol * UsSymbolTable::SearchTransCopy ( const std::string & aName,
int aSequenceNumberLimit = 0x7fffffff )

◆ UT_MEMORY_DEBUG_MARKER()

UsSymbolTable::UT_MEMORY_DEBUG_MARKER ( cMDB_UsSymbolTable )

References cMDB_UsSymbolTable.

Member Data Documentation

◆ mEntries

EntryMap UsSymbolTable::mEntries

Referenced by SearchTransCopy().

◆ mInnerScopes

std::vector<TableLink> UsSymbolTable::mInnerScopes

Referenced by AddInner().

◆ mOuterScopes

◆ mPoolPtr

UsSymbolTablePool* UsSymbolTable::mPoolPtr

Referenced by AddInner(), and UsSymbolTable().

◆ mThisTypePtr

UsType* UsSymbolTable::mThisTypePtr

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved