#include <probing_hash_table.hh>
Public Types | |
typedef EntryT | Entry |
typedef Entry::Key | Key |
typedef const Entry * | ConstIterator |
typedef Entry * | MutableIterator |
typedef HashT | Hash |
typedef EqualT | Equal |
typedef ModT | Mod |
Public Member Functions | |
ProbingHashTable () | |
ProbingHashTable (void *start, std::size_t allocated, const Key &invalid=Key(), const Hash &hash_func=Hash(), const Equal &equal_func=Equal()) | |
void | Relocate (void *new_base) |
MutableIterator | Ideal (const Key key) |
ConstIterator | Ideal (const Key key) const |
template<class T > | |
MutableIterator | Insert (const T &t) |
template<class T > | |
bool | FindOrInsert (const T &t, MutableIterator &out) |
void | FinishedInserting () |
template<class Key > | |
bool | UnsafeMutableFind (const Key key, MutableIterator &out) |
template<class Key > | |
MutableIterator | UnsafeMutableMustFind (const Key key) |
template<class Key > | |
bool | FindFromIdeal (const Key key, ConstIterator &i) const |
template<class Key > | |
bool | Find (const Key key, ConstIterator &out) const |
template<class Key > | |
ConstIterator | MustFind (const Key key) const |
void | Clear () |
std::size_t | SizeNoSerialization () const |
std::size_t | DoubleTo () const |
void | Double (void *new_base, bool clear_new=true) |
void | CheckConsistency () |
ConstIterator | RawBegin () const |
ConstIterator | RawEnd () const |
Static Public Member Functions | |
static uint64_t | Size (uint64_t entries, float multiplier) |
Friends | |
class | AutoProbing< Entry, Hash, Equal > |
Definition at line 98 of file probing_hash_table.hh.
typedef const Entry* util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::ConstIterator |
Definition at line 102 of file probing_hash_table.hh.
typedef EntryT util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Entry |
Definition at line 100 of file probing_hash_table.hh.
typedef EqualT util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Equal |
Definition at line 105 of file probing_hash_table.hh.
typedef HashT util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Hash |
Definition at line 104 of file probing_hash_table.hh.
typedef Entry::Key util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Key |
Definition at line 101 of file probing_hash_table.hh.
typedef ModT util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Mod |
Definition at line 106 of file probing_hash_table.hh.
typedef Entry* util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::MutableIterator |
Definition at line 103 of file probing_hash_table.hh.
util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::ProbingHashTable | ( | ) | [inline] |
Definition at line 114 of file probing_hash_table.hh.
util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::ProbingHashTable | ( | void * | start, | |
std::size_t | allocated, | |||
const Key & | invalid = Key() , |
|||
const Hash & | hash_func = Hash() , |
|||
const Equal & | equal_func = Equal() | |||
) | [inline] |
Definition at line 120 of file probing_hash_table.hh.
void util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::CheckConsistency | ( | ) | [inline] |
Definition at line 278 of file probing_hash_table.hh.
void util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Clear | ( | ) | [inline] |
Definition at line 220 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::Clear().
void util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Double | ( | void * | new_base, | |
bool | clear_new = true | |||
) | [inline] |
Definition at line 240 of file probing_hash_table.hh.
std::size_t util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::DoubleTo | ( | ) | const [inline] |
Definition at line 233 of file probing_hash_table.hh.
bool util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Find | ( | const Key | key, | |
ConstIterator & | out | |||
) | const [inline] |
Definition at line 206 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::Find(), lm::ngram::ProbingVocabulary::Index(), and lm::ngram::detail::HashedSearch< Value >::LookupLongest().
bool util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::FindFromIdeal | ( | const Key | key, | |
ConstIterator & | i | |||
) | const [inline] |
Definition at line 195 of file probing_hash_table.hh.
Referenced by util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::Find().
bool util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::FindOrInsert | ( | const T & | t, | |
MutableIterator & | out | |||
) | [inline] |
Definition at line 155 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::FindOrInsert().
void util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::FinishedInserting | ( | ) | [inline] |
Definition at line 171 of file probing_hash_table.hh.
ConstIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Ideal | ( | const Key | key | ) | const [inline] |
Definition at line 142 of file probing_hash_table.hh.
MutableIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Ideal | ( | const Key | key | ) | [inline] |
Definition at line 139 of file probing_hash_table.hh.
Referenced by util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::CheckConsistency(), util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::Find(), util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::FindOrInsert(), util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::MustFind(), util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::UnsafeMutableFind(), and util::ProbingHashTable< ProbingVocabularyEntry, util::IdentityHash >::UnsafeMutableMustFind().
MutableIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Insert | ( | const T & | t | ) | [inline] |
Definition at line 146 of file probing_hash_table.hh.
Referenced by lm::ngram::ProbingVocabulary::Insert().
ConstIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::MustFind | ( | const Key | key | ) | const [inline] |
Definition at line 212 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::MustFind().
ConstIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::RawBegin | ( | ) | const [inline] |
Definition at line 299 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::RawBegin().
ConstIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::RawEnd | ( | ) | const [inline] |
Definition at line 302 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::RawEnd().
void util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Relocate | ( | void * | new_base | ) | [inline] |
Definition at line 134 of file probing_hash_table.hh.
Referenced by lm::ngram::ProbingVocabulary::Relocate().
static uint64_t util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::Size | ( | uint64_t | entries, | |
float | multiplier | |||
) | [inline, static] |
Definition at line 108 of file probing_hash_table.hh.
Referenced by lm::ngram::detail::HashedSearch< Value >::SetupMemory(), and lm::ngram::detail::HashedSearch< Value >::Size().
std::size_t util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::SizeNoSerialization | ( | ) | const [inline] |
Definition at line 228 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::Size().
bool util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::UnsafeMutableFind | ( | const Key | key, | |
MutableIterator & | out | |||
) | [inline] |
Definition at line 174 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::UnsafeMutableFind().
MutableIterator util::ProbingHashTable< EntryT, HashT, EqualT, ModT >::UnsafeMutableMustFind | ( | const Key | key | ) | [inline] |
Definition at line 186 of file probing_hash_table.hh.
Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::UnsafeMutableMustFind().
friend class AutoProbing< Entry, Hash, Equal > [friend] |
Definition at line 307 of file probing_hash_table.hh.