|
LLVM
8.0.1
|
Provides lookup on an on disk hash table. More...
#include "llvm/Support/OnDiskHashTable.h"

Classes | |
| class | iterator |
Public Types | |
| typedef Info | InfoType |
| typedef Info::internal_key_type | internal_key_type |
| typedef Info::external_key_type | external_key_type |
| typedef Info::data_type | data_type |
| typedef Info::hash_value_type | hash_value_type |
| typedef Info::offset_type | offset_type |
Public Member Functions | |
| OnDiskChainedHashTable (offset_type NumBuckets, offset_type NumEntries, const unsigned char *Buckets, const unsigned char *Base, const Info &InfoObj=Info()) | |
| offset_type | getNumBuckets () const |
| offset_type | getNumEntries () const |
| const unsigned char * | getBase () const |
| const unsigned char * | getBuckets () const |
| bool | isEmpty () const |
| iterator | find (const external_key_type &EKey, Info *InfoPtr=nullptr) |
| Look up the stored data for a particular key. More... | |
| iterator | find_hashed (const internal_key_type &IKey, hash_value_type KeyHash, Info *InfoPtr=nullptr) |
| Look up the stored data for a particular key with a known hash. More... | |
| iterator | end () const |
| Info & | getInfoObj () |
Static Public Member Functions | |
| static std::pair< offset_type, offset_type > | readNumBucketsAndEntries (const unsigned char *&Buckets) |
| Read the number of buckets and the number of entries from a hash table produced by OnDiskHashTableGenerator::Emit, and advance the Buckets pointer past them. More... | |
| static OnDiskChainedHashTable * | Create (const unsigned char *Buckets, const unsigned char *const Base, const Info &InfoObj=Info()) |
| Create the hash table. More... | |
Provides lookup on an on disk hash table.
This needs an Info that handles reading values from the hash table's payload and computes the hash for a given key. This should provide the following interface:
Definition at line 274 of file OnDiskHashTable.h.
| typedef Info::data_type llvm::OnDiskChainedHashTable< Info >::data_type |
Definition at line 285 of file OnDiskHashTable.h.
| typedef Info::external_key_type llvm::OnDiskChainedHashTable< Info >::external_key_type |
Definition at line 284 of file OnDiskHashTable.h.
| typedef Info::hash_value_type llvm::OnDiskChainedHashTable< Info >::hash_value_type |
Definition at line 286 of file OnDiskHashTable.h.
| typedef Info llvm::OnDiskChainedHashTable< Info >::InfoType |
Definition at line 282 of file OnDiskHashTable.h.
| typedef Info::internal_key_type llvm::OnDiskChainedHashTable< Info >::internal_key_type |
Definition at line 283 of file OnDiskHashTable.h.
| typedef Info::offset_type llvm::OnDiskChainedHashTable< Info >::offset_type |
Definition at line 287 of file OnDiskHashTable.h.
|
inline |
Definition at line 289 of file OnDiskHashTable.h.
References assert().
|
inlinestatic |
Create the hash table.
| Buckets | is the beginning of the hash table itself, which follows the payload of entire structure. This is the value returned by OnDiskHashTableGenerator::Emit. |
| Base | is the point from which all offsets into the structure are based. This is offset 0 in the stream that was used when Emitting the table. |
Definition at line 416 of file OnDiskHashTable.h.
References assert().
|
inline |
Definition at line 403 of file OnDiskHashTable.h.
|
inline |
Look up the stored data for a particular key.
Definition at line 343 of file OnDiskHashTable.h.
|
inline |
Look up the stored data for a particular key with a known hash.
Definition at line 350 of file OnDiskHashTable.h.
References X.
|
inline |
Definition at line 316 of file OnDiskHashTable.h.
|
inline |
Definition at line 317 of file OnDiskHashTable.h.
|
inline |
Definition at line 405 of file OnDiskHashTable.h.
|
inline |
Definition at line 314 of file OnDiskHashTable.h.
|
inline |
Definition at line 315 of file OnDiskHashTable.h.
|
inline |
Definition at line 319 of file OnDiskHashTable.h.
|
inlinestatic |
Read the number of buckets and the number of entries from a hash table produced by OnDiskHashTableGenerator::Emit, and advance the Buckets pointer past them.
Definition at line 303 of file OnDiskHashTable.h.
References assert().
Referenced by llvm::OnDiskIterableChainedHashTable< Info >::Create().
1.8.13