util::AutoProbing< EntryT, HashT, EqualT > Class Template Reference

#include <probing_hash_table.hh>

Inheritance diagram for util::AutoProbing< EntryT, HashT, EqualT >:

Inheritance graph
[legend]
Collaboration diagram for util::AutoProbing< EntryT, HashT, EqualT >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef EntryT Entry
typedef Entry::Key Key
typedef const EntryConstIterator
typedef EntryMutableIterator
typedef HashT Hash
typedef EqualT Equal

Public Member Functions

 AutoProbing (std::size_t initial_size=5, const Key &invalid=Key(), const Hash &hash_func=Hash(), const Equal &equal_func=Equal())
template<class T >
MutableIterator Insert (const T &t)
template<class T >
bool FindOrInsert (const T &t, MutableIterator &out)
template<class Key >
bool UnsafeMutableFind (const Key key, MutableIterator &out)
template<class Key >
MutableIterator UnsafeMutableMustFind (const Key key)
template<class Key >
bool Find (const Key key, ConstIterator &out) const
template<class Key >
ConstIterator MustFind (const Key key) const
std::size_t Size () const
void Clear ()
ConstIterator RawBegin () const
ConstIterator RawEnd () const

Static Public Member Functions

static std::size_t MemUsage (std::size_t size, float multiplier=1.5)


Detailed Description

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
class util::AutoProbing< EntryT, HashT, EqualT >

Definition at line 330 of file probing_hash_table.hh.


Member Typedef Documentation

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef const Entry* util::AutoProbing< EntryT, HashT, EqualT >::ConstIterator

Definition at line 340 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef EntryT util::AutoProbing< EntryT, HashT, EqualT >::Entry

Definition at line 338 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef EqualT util::AutoProbing< EntryT, HashT, EqualT >::Equal

Definition at line 343 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef HashT util::AutoProbing< EntryT, HashT, EqualT >::Hash

Definition at line 342 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef Entry::Key util::AutoProbing< EntryT, HashT, EqualT >::Key

Definition at line 339 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
typedef Entry* util::AutoProbing< EntryT, HashT, EqualT >::MutableIterator

Definition at line 341 of file probing_hash_table.hh.


Constructor & Destructor Documentation

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
util::AutoProbing< EntryT, HashT, EqualT >::AutoProbing ( std::size_t  initial_size = 5,
const Key invalid = Key(),
const Hash hash_func = Hash(),
const Equal equal_func = Equal() 
) [inline]

Definition at line 345 of file probing_hash_table.hh.


Member Function Documentation

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
void util::AutoProbing< EntryT, HashT, EqualT >::Clear (  )  [inline]

Definition at line 385 of file probing_hash_table.hh.

Referenced by util::AutoProbing< ProbingVocabularyEntry, util::IdentityHash >::AutoProbing().

Here is the caller graph for this function:

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class Key >
bool util::AutoProbing< EntryT, HashT, EqualT >::Find ( const Key  key,
ConstIterator out 
) const [inline]

Definition at line 373 of file probing_hash_table.hh.

Referenced by lm::ngram::GrowableVocab< NewWordAction >::Index().

Here is the caller graph for this function:

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class T >
bool util::AutoProbing< EntryT, HashT, EqualT >::FindOrInsert ( const T t,
MutableIterator out 
) [inline]

Definition at line 360 of file probing_hash_table.hh.

Referenced by lm::ngram::GrowableVocab< NewWordAction >::FindOrInsert().

Here is the caller graph for this function:

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class T >
MutableIterator util::AutoProbing< EntryT, HashT, EqualT >::Insert ( const T t  )  [inline]

Definition at line 354 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
static std::size_t util::AutoProbing< EntryT, HashT, EqualT >::MemUsage ( std::size_t  size,
float  multiplier = 1.5 
) [inline, static]

Definition at line 334 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class Key >
ConstIterator util::AutoProbing< EntryT, HashT, EqualT >::MustFind ( const Key  key  )  const [inline]

Definition at line 377 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
ConstIterator util::AutoProbing< EntryT, HashT, EqualT >::RawBegin (  )  const [inline]

Definition at line 389 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
ConstIterator util::AutoProbing< EntryT, HashT, EqualT >::RawEnd (  )  const [inline]

Definition at line 392 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
std::size_t util::AutoProbing< EntryT, HashT, EqualT >::Size (  )  const [inline]

Definition at line 381 of file probing_hash_table.hh.

Referenced by lm::ngram::GrowableVocab< NewWordAction >::Size().

Here is the caller graph for this function:

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class Key >
bool util::AutoProbing< EntryT, HashT, EqualT >::UnsafeMutableFind ( const Key  key,
MutableIterator out 
) [inline]

Definition at line 365 of file probing_hash_table.hh.

template<class EntryT, class HashT, class EqualT = std::equal_to<typename EntryT::Key>>
template<class Key >
MutableIterator util::AutoProbing< EntryT, HashT, EqualT >::UnsafeMutableMustFind ( const Key  key  )  [inline]

Definition at line 369 of file probing_hash_table.hh.


The documentation for this class was generated from the following file:

Generated on Thu Jul 6 00:34:51 2017 for Moses by  doxygen 1.5.9