STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Public Attributes | List of all members
_Uhash_compare< _Kty, _Hasher, _Keyeq > Class Template Reference
Inheritance diagram for _Uhash_compare< _Kty, _Hasher, _Keyeq >:
_Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > _Uset_traits< _Kty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > _Uset_traits< _Kty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >

Public Types

enum  { bucket_size = 1 }
 

Public Member Functions

 _Uhash_compare (_Hasher _Hasharg=_Hasher(), _Keyeq _Keyeqarg=_Keyeq())
 
size_t operator() (const _Kty &_Keyval) const
 
bool operator() (const _Kty &_Keyval1, const _Kty &_Keyval2) const
 
const _Hasher & _Gethash () const _NOEXCEPT
 
const _Keyeq & _Getkeyeq () const _NOEXCEPT
 
float & _Get_max_bucket_size () _NOEXCEPT
 
const float & _Get_max_bucket_size () const _NOEXCEPT
 

Public Attributes

_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
 

Member Enumeration Documentation

template<class _Kty , class _Hasher , class _Keyeq >
anonymous enum
Enumerator
bucket_size 
101  { // parameters for hash table
102  bucket_size = 1 // 0 < bucket_size
103  };
Definition: xhash:102

Constructor & Destructor Documentation

template<class _Kty , class _Hasher , class _Keyeq >
_Uhash_compare< _Kty, _Hasher, _Keyeq >::_Uhash_compare ( _Hasher  _Hasharg = _Hasher(),
_Keyeq  _Keyeqarg = _Keyeq() 
)
inline
106  : _Mypair(_One_then_variadic_args_t(), _Hasharg,
107  _One_then_variadic_args_t(), _Keyeqarg, 0.0f)
108  { // construct with hasher and equality comparator
109  }
_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
Definition: xhash:141
Definition: xutility:282

Member Function Documentation

template<class _Kty , class _Hasher , class _Keyeq >
float& _Uhash_compare< _Kty, _Hasher, _Keyeq >::_Get_max_bucket_size ( )
inline
132  { // return reference to current maximum bucket size
133  return (_Mypair._Get_second()._Get_second());
134  }
_Ty2 & _Get_second() _NOEXCEPT
Definition: xutility:336
_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
Definition: xhash:141
template<class _Kty , class _Hasher , class _Keyeq >
const float& _Uhash_compare< _Kty, _Hasher, _Keyeq >::_Get_max_bucket_size ( ) const
inline
137  { // return const reference to current maximum bucket size
138  return (_Mypair._Get_second()._Get_second());
139  }
_Ty2 & _Get_second() _NOEXCEPT
Definition: xutility:336
_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
Definition: xhash:141
template<class _Kty , class _Hasher , class _Keyeq >
const _Hasher& _Uhash_compare< _Kty, _Hasher, _Keyeq >::_Gethash ( ) const
inline
122  { // return const reference to hash function
123  return (_Mypair._Get_first());
124  }
_Ty1 & _Get_first() _NOEXCEPT
Definition: xutility:316
_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
Definition: xhash:141
template<class _Kty , class _Hasher , class _Keyeq >
const _Keyeq& _Uhash_compare< _Kty, _Hasher, _Keyeq >::_Getkeyeq ( ) const
inline
127  { // return const reference to key equality predicate
128  return (_Mypair._Get_second()._Get_first());
129  }
_Ty2 & _Get_second() _NOEXCEPT
Definition: xutility:336
_Compressed_pair< _Hasher, _Compressed_pair< _Keyeq, float > > _Mypair
Definition: xhash:141
template<class _Kty , class _Hasher , class _Keyeq >
size_t _Uhash_compare< _Kty, _Hasher, _Keyeq >::operator() ( const _Kty &  _Keyval) const
inline
112  { // hash _Keyval to size_t value
113  return ((size_t)_Gethash()(_Keyval));
114  }
const _Hasher & _Gethash() const _NOEXCEPT
Definition: xhash:121
template<class _Kty , class _Hasher , class _Keyeq >
bool _Uhash_compare< _Kty, _Hasher, _Keyeq >::operator() ( const _Kty &  _Keyval1,
const _Kty &  _Keyval2 
) const
inline
117  { // test if _Keyval1 NOT equal to _Keyval2
118  return (!_Getkeyeq()(_Keyval1, _Keyval2));
119  }
const _Keyeq & _Getkeyeq() const _NOEXCEPT
Definition: xhash:126

Member Data Documentation

template<class _Kty , class _Hasher , class _Keyeq >
_Compressed_pair<_Hasher, _Compressed_pair<_Keyeq, float> > _Uhash_compare< _Kty, _Hasher, _Keyeq >::_Mypair

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