Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false > Struct Template Reference

List of all members.

Public Types

typedef H1 hasher

Public Member Functions

hasher hash_function () const

Protected Types

typedef std::size_t hash_code_t

Protected Member Functions

 hash_code_base (const ExtractKey &ex, const Equal &eq, const H1 &h1, const H2 &h2, const default_ranged_hash &)
hash_code_t m_hash_code (const Key &k) const
std::size_t bucket_index (const Key &, hash_code_t c, std::size_t N) const
std::size_t bucket_index (const hash_node< Value, false > *p, std::size_t N) const
bool compare (const Key &k, hash_code_t, hash_node< Value, false > *n) const
void store_code (hash_node< Value, false > *, hash_code_t) const
void copy_code (hash_node< Value, false > *, const hash_node< Value, false > *) const
void m_swap (hash_code_base &x)

Protected Attributes

ExtractKey m_extract
Equal m_eq
H1 m_h1
H2 m_h2

Detailed Description

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
struct Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >

Definition at line 811 of file hashtable.


Member Typedef Documentation

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
typedef std::size_t Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::hash_code_t [protected]

Definition at line 825 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
typedef H1 Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::hasher

Definition at line 814 of file hashtable.


Constructor & Destructor Documentation

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::hash_code_base ( const ExtractKey &  ex,
const Equal &  eq,
const H1 &  h1,
const H2 &  h2,
const default_ranged_hash  
) [inline, protected]

Definition at line 821 of file hashtable.


Member Function Documentation

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
std::size_t Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::bucket_index ( const hash_node< Value, false > *  p,
std::size_t  N 
) const [inline, protected]

Definition at line 836 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
std::size_t Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::bucket_index ( const Key &  ,
hash_code_t  c,
std::size_t  N 
) const [inline, protected]

Definition at line 832 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
bool Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::compare ( const Key &  k,
hash_code_t  ,
hash_node< Value, false > *  n 
) const [inline, protected]

Definition at line 840 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
void Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::copy_code ( hash_node< Value, false > *  ,
const hash_node< Value, false > *   
) const [inline, protected]

Definition at line 848 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
hasher Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::hash_function (  )  const [inline]

Definition at line 817 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
hash_code_t Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_hash_code ( const Key &  k  )  const [inline, protected]

Definition at line 828 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
void Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_swap ( hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false > &  x  )  [inline, protected]

Definition at line 852 of file hashtable.

References std::swap().

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
void Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::store_code ( hash_node< Value, false > *  ,
hash_code_t   
) const [inline, protected]

Definition at line 844 of file hashtable.


Member Data Documentation

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
Equal Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_eq [protected]

Definition at line 862 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
ExtractKey Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_extract [protected]

Definition at line 861 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
H1 Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_h1 [protected]

Definition at line 863 of file hashtable.

template<typename Key, typename Value, typename ExtractKey, typename Equal, typename H1, typename H2>
H2 Internal::hash_code_base< Key, Value, ExtractKey, Equal, H1, H2, default_ranged_hash, false >::m_h2 [protected]

Definition at line 864 of file hashtable.


The documentation for this struct was generated from the following file:
Generated on Tue Feb 2 16:58:31 2010 for GNU C++ STL by  doxygen 1.4.7