#include <hash.h>
Inheritance diagram for HashTable:
Public Methods | |
HashTable () | |
HashTable (int) | |
void | MakeTable () |
bool | IsEmpty () |
void | Dump (ostream &) |
int | AddEntry (char *key, HashValue value, int *index=0) |
int | AddEntry (bool, char *key, int len, HashValue value, int *index=0) |
int | AddEntry (char *key, int len, HashValue value, int *index=0) |
int | AddDupEntry (char *key, int len, HashValue value, int *index=0) |
bool | Lookup (char *key, HashValue *value) |
bool | Lookup (char *key, int len, HashValue *value) |
bool | LookupEntries (char *key, int len, HashValue *value, int &nth) |
HashValue | Peek (int index) |
bool | RemoveEntry (char *key) |
bool | RemoveEntry (char *key, int len) |
void | ReplaceValue (int index, HashValue value) |
Protected Methods | |
char * | KeyString (char *key) |
char * | KeyString (char *key, int len) |
bool | Lookup2 (char *key, HashValue *val, int *index) |
bool | Lookup2 (char *key, int len, HashValue *val, int *index) |
bool | GrowTable (int increment) |
unsigned int | StringToInt (char *) |
unsigned int | StringToInt (char *, int) |
int | HashFunc (unsigned int p, int n) |
Static Protected Methods | |
uint | NextPrimeNumber (uint number) |
Protected Attributes | |
HashTableEntry * | entries |
int | Size |
int | Prime2 |
|
|
|
|
|
Definition at line 63 of file hash.h. References AddEntry(), FALSE, and HashValue. Referenced by Environment::AddDupEntry(), and GrowTable(). |
|
|
|
Definition at line 278 of file hash.cc. References AddEntry(), entries, GrowTable(), HashFunc(), HashValue, HashTableEntry::key, KeyString(), nil, Size, StringToInt(), and HashTableEntry::value. |
|
Definition at line 247 of file hash.cc. References entries, GrowTable(), HashFunc(), HashValue, HashTableEntry::key, KeyString(), nil, Size, StringToInt(), and HashTableEntry::value. Referenced by AddDupEntry(), AddEntry(), Environment::AddEntry(), Lex::RecordKeyword(), Environment::RecordPointerVariable(), Environment::RecordUsing(), and Environment::RecordVariable(). |
|
Definition at line 82 of file hash.cc. References entries, HashTableEntry::key, nil, and Size. Referenced by Environment::Dump(). |
|
Definition at line 216 of file hash.cc. References AddDupEntry(), entries, HashTableEntry::key, MakeTable(), MopWarningMessage2(), NextPrimeNumber(), nil, Prime2, Size, and TRUE. Referenced by AddEntry(). |
|
Definition at line 391 of file hash.cc. Referenced by AddEntry(), Lookup2(), and LookupEntries(). |
|
Definition at line 73 of file hash.cc. References entries, FALSE, HashTableEntry::key, nil, Size, and TRUE. Referenced by Environment::IsEmpty(). |
|
|
|
Definition at line 93 of file hash.cc. Referenced by AddEntry(). |
|
|
|
Definition at line 106 of file hash.cc. References HashValue, and Lookup2(). Referenced by Environment::LookupAll(), Environment::LookupTop(), and Lex::Screening(). |
|
Definition at line 137 of file hash.cc. References entries, FALSE, HashFunc(), HashValue, HashTableEntry::key, nil, Size, StringToInt(), TRUE, and HashTableEntry::value. |
|
Definition at line 118 of file hash.cc. References entries, FALSE, HashFunc(), HashValue, HashTableEntry::key, nil, Size, StringToInt(), TRUE, and HashTableEntry::value. Referenced by Lookup(), and RemoveEntry(). |
|
Definition at line 163 of file hash.cc. References entries, FALSE, HashFunc(), HashValue, HashTableEntry::key, nil, Size, StringToInt(), TRUE, and HashTableEntry::value. Referenced by Environment::LookupType(). |
|
Definition at line 59 of file hash.cc. References entries, HashTableEntry::key, nil, and Size. Referenced by BigHashTable::BigHashTable(), GrowTable(), and HashTable(). |
|
Definition at line 189 of file hash.cc. References FALSE, TRUE, and uint. Referenced by GrowTable(). |
|
Definition at line 317 of file hash.cc. References entries, HashValue, and HashTableEntry::value. Referenced by Lex::RecordKeyword(). |
|
Definition at line 343 of file hash.cc. References entries, FALSE, HashValue, HashTableEntry::key, Lookup2(), and TRUE. |
|
Definition at line 330 of file hash.cc. References entries, FALSE, HashValue, HashTableEntry::key, Lookup2(), and TRUE. |
|
Definition at line 322 of file hash.cc. References entries, HashValue, Size, and HashTableEntry::value. |
|
Definition at line 373 of file hash.cc. References nil. |
|
Definition at line 356 of file hash.cc. References nil. Referenced by AddEntry(), Lookup2(), and LookupEntries(). |
|
Definition at line 88 of file hash.h. Referenced by AddEntry(), Dump(), GrowTable(), IsEmpty(), Lookup2(), LookupEntries(), MakeTable(), Peek(), RemoveEntry(), and ReplaceValue(). |
|
Definition at line 91 of file hash.h. Referenced by BigHashTable::BigHashTable(), GrowTable(), HashFunc(), and HashTable(). |
|
Definition at line 89 of file hash.h. Referenced by AddEntry(), BigHashTable::BigHashTable(), Dump(), GrowTable(), HashFunc(), HashTable(), IsEmpty(), Lookup2(), LookupEntries(), MakeTable(), and ReplaceValue(). |