47 struct SymbolCompare {
50 static set<CSymbol*,SymbolCompare> hashTable;
53 static INT32 nextLabelId;
94 const char*
GetName(
void )
const;
113 static INT32 Hash(
const char*
string );
131 #endif // CSYMBOL_HPP static CSymbol * GenSymbol(const char *prefix)
Generated a new symbol with a unique name using the given prefix.
int Escaped(void) const
Determine if string is an escaped symbol.
long INT32
Short cut for signed 32 bit integer.
Definition: glue.h:38
CSymbol(const char *aName)
Create a symbol.
static CSymbol * Lookup(const char *name)
Find symbol for given string.
Holder for character strings.
Definition: csymbol.h:44
Bulk object allocation object.
Definition: cobstack.h:46
int External() const
Determine if symbol is external reference return non-zero if symbol is external.
static void DumpTable(void)
Dump symbol table.
const char * GetName(void) const
Get symbol's text.
static void DumpStats()
Dump hash table stats.
const char * Identifier(const char *s)
Convert a string representing an identifier to an escaped format for printing (if needed)...
~CSymbol(void)
Destroy symbol.
Base class for vrq objects.
Definition: cobject.h:41
static void SetObstack(CObstack *aObstack)
Set heap to use for storage.