class OnDiskChainedHashTable
Declaration
template <typename Info>
class OnDiskChainedHashTable { /* full declaration omitted */ };
Description
Provides lookup on an on disk hash table. This needs an \c 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:
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:274
Templates
- Info
Method Overview
- public static OnDiskChainedHashTable<Info> * Create(const unsigned char * Buckets, const unsigned char *const Base, const Info & InfoObj = type-parameter-0-0())
- public OnDiskChainedHashTable<Info>(llvm::OnDiskChainedHashTable::offset_type NumBuckets, llvm::OnDiskChainedHashTable::offset_type NumEntries, const unsigned char * Buckets, const unsigned char * Base, const Info & InfoObj = type-parameter-0-0())
- public llvm::OnDiskChainedHashTable::iterator end() const
- public llvm::OnDiskChainedHashTable::iterator find(const llvm::OnDiskChainedHashTable::external_key_type & EKey, Info * InfoPtr = nullptr)
- public llvm::OnDiskChainedHashTable::iterator find_hashed(const llvm::OnDiskChainedHashTable::internal_key_type & IKey, llvm::OnDiskChainedHashTable::hash_value_type KeyHash, Info * InfoPtr = nullptr)
- public const unsigned char * getBase() const
- public const unsigned char * getBuckets() const
- public Info & getInfoObj()
- public llvm::OnDiskChainedHashTable::offset_type getNumBuckets() const
- public llvm::OnDiskChainedHashTable::offset_type getNumEntries() const
- public bool isEmpty() const
- public static std::pair<offset_type, offset_type> readNumBucketsAndEntries(const unsigned char *& Buckets)
Methods
¶static OnDiskChainedHashTable<Info>* Create(
const unsigned char* Buckets,
const unsigned char* const Base,
const Info& InfoObj = type - parameter - 0 -
0())
static OnDiskChainedHashTable<Info>* Create(
const unsigned char* Buckets,
const unsigned char* const Base,
const Info& InfoObj = type - parameter - 0 -
0())
Description
Create the hash table.
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:416
Parameters
- const unsigned char* Buckets
- is the beginning of the hash table itself, which follows the payload of entire structure. This is the value returned by OnDiskHashTableGenerator::Emit.
- const unsigned char* const 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.
- const Info& InfoObj = type-parameter-0-0()
¶OnDiskChainedHashTable<Info>(
llvm::OnDiskChainedHashTable::offset_type
NumBuckets,
llvm::OnDiskChainedHashTable::offset_type
NumEntries,
const unsigned char* Buckets,
const unsigned char* Base,
const Info& InfoObj = type - parameter - 0 -
0())
OnDiskChainedHashTable<Info>(
llvm::OnDiskChainedHashTable::offset_type
NumBuckets,
llvm::OnDiskChainedHashTable::offset_type
NumEntries,
const unsigned char* Buckets,
const unsigned char* Base,
const Info& InfoObj = type - parameter - 0 -
0())
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:289
Parameters
- llvm::OnDiskChainedHashTable::offset_type NumBuckets
- llvm::OnDiskChainedHashTable::offset_type NumEntries
- const unsigned char* Buckets
- const unsigned char* Base
- const Info& InfoObj = type-parameter-0-0()
¶llvm::OnDiskChainedHashTable::iterator end() const
llvm::OnDiskChainedHashTable::iterator end() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:403
¶llvm::OnDiskChainedHashTable::iterator find(
const llvm::OnDiskChainedHashTable::
external_key_type& EKey,
Info* InfoPtr = nullptr)
llvm::OnDiskChainedHashTable::iterator find(
const llvm::OnDiskChainedHashTable::
external_key_type& EKey,
Info* InfoPtr = nullptr)
Description
Look up the stored data for a particular key.
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:343
Parameters
- const llvm::OnDiskChainedHashTable:: external_key_type& EKey
- Info* InfoPtr = nullptr
¶llvm::OnDiskChainedHashTable::iterator
find_hashed(
const llvm::OnDiskChainedHashTable::
internal_key_type& IKey,
llvm::OnDiskChainedHashTable::hash_value_type
KeyHash,
Info* InfoPtr = nullptr)
llvm::OnDiskChainedHashTable::iterator
find_hashed(
const llvm::OnDiskChainedHashTable::
internal_key_type& IKey,
llvm::OnDiskChainedHashTable::hash_value_type
KeyHash,
Info* InfoPtr = nullptr)
Description
Look up the stored data for a particular key with a known hash.
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:350
Parameters
- const llvm::OnDiskChainedHashTable:: internal_key_type& IKey
- llvm::OnDiskChainedHashTable::hash_value_type KeyHash
- Info* InfoPtr = nullptr
¶const unsigned char* getBase() const
const unsigned char* getBase() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:316
¶const unsigned char* getBuckets() const
const unsigned char* getBuckets() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:317
¶Info& getInfoObj()
Info& getInfoObj()
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:405
¶llvm::OnDiskChainedHashTable::offset_type
getNumBuckets() const
llvm::OnDiskChainedHashTable::offset_type
getNumBuckets() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:314
¶llvm::OnDiskChainedHashTable::offset_type
getNumEntries() const
llvm::OnDiskChainedHashTable::offset_type
getNumEntries() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:315
¶bool isEmpty() const
bool isEmpty() const
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:319
¶static std::pair<offset_type, offset_type>
readNumBucketsAndEntries(
const unsigned char*& Buckets)
static std::pair<offset_type, offset_type>
readNumBucketsAndEntries(
const unsigned char*& Buckets)
Description
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.
Declared at: llvm/include/llvm/Support/OnDiskHashTable.h:303
Parameters
- const unsigned char*& Buckets