TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Types | Public Member Functions | List of all members
hashtable< _Val, _Key, _HF, _ExK, _EqK, _All > Class Template Reference

Public Types

typedef _Key key_type
 
typedef _Val value_type
 
typedef _HF hasher
 
typedef _EqK key_equal
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef value_typepointer
 
typedef const value_typeconst_pointer
 
typedef value_typereference
 
typedef const value_typeconst_reference
 
typedef forward_iterator_tag _Iterator_category
 
typedef _Alloc_traits< _Val,
_All >::allocator_type 
allocator_type
 
typedef _Ht_iterator< _Val,
__const_val_traits, _Key, _HF,
_ExK, _EqK, _All > 
const_iterator
 
typedef _Ht_iterator< _Val,
__nonconst_val_traits, _Key,
_HF, _ExK, _EqK, _All > 
iterator
 

Public Member Functions

hasher hash_funct () const
 
key_equal key_eq () const
 
allocator_type get_allocator () const
 
 hashtable (size_type __n, const _HF &__hf, const _EqK &__eql, const _ExK &__ext, const allocator_type &__a=allocator_type())
 
 hashtable (size_type __n, const _HF &__hf, const _EqK &__eql, const allocator_type &__a=allocator_type())
 
 hashtable (const _Self &__ht)
 
_Selfoperator= (const _Self &__ht)
 
 ~hashtable ()
 
__forceinline size_type size () const
 
__forceinline size_type max_size () const
 
__forceinline bool empty () const
 
__noinline void swap (_Self &__ht)
 
__noinline iterator begin ()
 
__forceinline iterator end ()
 
__noinline const_iterator begin () const
 
__forceinline const_iterator end () const
 
size_type bucket_count () const
 
size_type max_bucket_count () const
 
size_type elems_in_bucket (size_type __bucket) const
 
pair< iterator, bool > insert_unique (const value_type &__obj)
 
iterator insert_equal (const value_type &__obj)
 
pair< iterator, bool > insert_unique_noresize (const value_type &__obj)
 
iterator insert_equal_noresize (const value_type &__obj)
 
template<class _InputIterator >
void insert_unique (_InputIterator __f, _InputIterator __l)
 
template<class _InputIterator >
void insert_equal (_InputIterator __f, _InputIterator __l)
 
template<class _InputIterator >
void insert_unique (_InputIterator __f, _InputIterator __l, const input_iterator_tag &)
 
template<class _InputIterator >
void insert_equal (_InputIterator __f, _InputIterator __l, const input_iterator_tag &)
 
template<class _ForwardIterator >
void insert_unique (_ForwardIterator __f, _ForwardIterator __l, const forward_iterator_tag &)
 
template<class _ForwardIterator >
void insert_equal (_ForwardIterator __f, _ForwardIterator __l, const forward_iterator_tag &)
 
reference find_or_insert (const value_type &__obj)
 
template<class _KT >
__forceinline iterator find (const _KT &__key)
 
template<class _KT >
__forceinline const_iterator find (const _KT &__key) const
 
__noinline size_type count (const key_type &__key) const
 
pair< iterator, iteratorequal_range (const key_type &__key)
 
pair< const_iterator,
const_iterator
equal_range (const key_type &__key) const
 
__noinline size_type erase (const key_type &__key)
 
__noinline void erase (const const_iterator &__it)
 
__noinline void erase (const_iterator __first, const_iterator __last)
 
__noinline void resize (size_type __num_elements_hint)
 
__noinline void clear ()
 

Member Typedef Documentation

typedef _Key key_type
typedef _Val value_type
typedef _HF hasher
typedef _EqK key_equal
typedef size_t size_type
typedef ptrdiff_t difference_type
typedef value_type* pointer
typedef const value_type* const_pointer
typedef const value_type& const_reference
typedef _Alloc_traits<_Val,_All>::allocator_type allocator_type
typedef _Ht_iterator<_Val, __const_val_traits,_Key,_HF,_ExK,_EqK, _All> const_iterator
typedef _Ht_iterator<_Val, __nonconst_val_traits,_Key,_HF,_ExK,_EqK,_All> iterator

Constructor & Destructor Documentation

hashtable ( size_type  __n,
const _HF &  __hf,
const _EqK &  __eql,
const _ExK &  __ext,
const allocator_type __a = allocator_type() 
)
hashtable ( size_type  __n,
const _HF &  __hf,
const _EqK &  __eql,
const allocator_type __a = allocator_type() 
)
hashtable ( const _Self __ht)
~hashtable ( )

Member Function Documentation

hasher hash_funct ( ) const
key_equal key_eq ( ) const
allocator_type get_allocator ( ) const
_Self& operator= ( const _Self __ht)
__forceinline size_type size ( ) const
__forceinline size_type max_size ( ) const
__forceinline bool empty ( ) const
__noinline void swap ( _Self __ht)
__noinline iterator begin ( )
__forceinline iterator end ( )
__noinline const_iterator begin ( ) const
__forceinline const_iterator end ( ) const
size_type bucket_count ( ) const
size_type max_bucket_count ( ) const
size_type elems_in_bucket ( size_type  __bucket) const
pair<iterator, bool> insert_unique ( const value_type __obj)
iterator insert_equal ( const value_type __obj)
pair<iterator, bool> insert_unique_noresize ( const value_type __obj)
iterator insert_equal_noresize ( const value_type __obj)
void insert_unique ( _InputIterator  __f,
_InputIterator  __l 
)
void insert_equal ( _InputIterator  __f,
_InputIterator  __l 
)
void insert_unique ( _InputIterator  __f,
_InputIterator  __l,
const input_iterator_tag  
)
void insert_equal ( _InputIterator  __f,
_InputIterator  __l,
const input_iterator_tag  
)
void insert_unique ( _ForwardIterator  __f,
_ForwardIterator  __l,
const forward_iterator_tag  
)
void insert_equal ( _ForwardIterator  __f,
_ForwardIterator  __l,
const forward_iterator_tag  
)
reference find_or_insert ( const value_type __obj)
__forceinline iterator find ( const _KT &  __key)
__forceinline const_iterator find ( const _KT &  __key) const
__noinline size_type count ( const key_type __key) const
pair<iterator, iterator> equal_range ( const key_type __key)
pair<const_iterator, const_iterator> equal_range ( const key_type __key) const
__noinline size_type erase ( const key_type __key)
__noinline void erase ( const const_iterator __it)
__noinline void erase ( const_iterator  __first,
const_iterator  __last 
)
__noinline void resize ( size_type  __num_elements_hint)
__noinline void clear ( )