libstdc++
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc > Class Template Reference

Public Types

typedef _Ht::allocator_type allocator_type
 
typedef _Ht::const_iterator const_iterator
 
typedef _Ht::const_pointer const_pointer
 
typedef _Ht::const_reference const_reference
 
typedef _Tp data_type
 
typedef _Ht::difference_type difference_type
 
typedef _Ht::hasher hasher
 
typedef _Ht::iterator iterator
 
typedef _Ht::key_equal key_equal
 
typedef _Ht::key_type key_type
 
typedef _Tp mapped_type
 
typedef _Ht::pointer pointer
 
typedef _Ht::reference reference
 
typedef _Ht::size_type size_type
 
typedef _Ht::value_type value_type
 

Public Member Functions

template<class _InputIterator >
 hash_map (_InputIterator __f, _InputIterator __l)
 
template<class _InputIterator >
 hash_map (_InputIterator __f, _InputIterator __l, size_type __n)
 
template<class _InputIterator >
 hash_map (_InputIterator __f, _InputIterator __l, size_type __n, const hasher &__hf)
 
template<class _InputIterator >
 hash_map (_InputIterator __f, _InputIterator __l, size_type __n, const hasher &__hf, const key_equal &__eql, const allocator_type &__a=allocator_type())
 
 hash_map (size_type __n)
 
 hash_map (size_type __n, const hasher &__hf)
 
 hash_map (size_type __n, const hasher &__hf, const key_equal &__eql, const allocator_type &__a=allocator_type())
 
iterator begin ()
 
const_iterator begin () const
 
size_type bucket_count () const
 
void clear ()
 
size_type count (const key_type &__key) const
 
size_type elems_in_bucket (size_type __n) const
 
bool empty () const
 
iterator end ()
 
const_iterator end () const
 
pair< iterator, iterator > equal_range (const key_type &__key)
 
pair< const_iterator, const_iterator > equal_range (const key_type &__key) const
 
size_type erase (const key_type &__key)
 
void erase (iterator __f, iterator __l)
 
void erase (iterator __it)
 
iterator find (const key_type &__key)
 
const_iterator find (const key_type &__key) const
 
allocator_type get_allocator () const
 
hasher hash_funct () const
 
template<class _InputIterator >
void insert (_InputIterator __f, _InputIterator __l)
 
pair< iterator, bool > insert (const value_type &__obj)
 
pair< iterator, bool > insert_noresize (const value_type &__obj)
 
key_equal key_eq () const
 
size_type max_bucket_count () const
 
size_type max_size () const
 
_Tp & operator[] (const key_type &__key)
 
void resize (size_type __hint)
 
size_type size () const
 
void swap (hash_map &__hs)
 

Friends

template<class _K1 , class _T1 , class _HF , class _EqK , class _Al >
bool operator== (const hash_map< _K1, _T1, _HF, _EqK, _Al > &, const hash_map< _K1, _T1, _HF, _EqK, _Al > &)
 

Detailed Description

template<class _Key, class _Tp, class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
class __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >

This is an SGI extension.

Todo:
Needs documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html

Definition at line 83 of file hash_map.

Member Typedef Documentation

◆ allocator_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::allocator_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::allocator_type

Definition at line 110 of file hash_map.

◆ const_iterator

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::const_iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::const_iterator

Definition at line 108 of file hash_map.

◆ const_pointer

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::const_pointer __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::const_pointer

Definition at line 103 of file hash_map.

◆ const_reference

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::const_reference __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::const_reference

Definition at line 105 of file hash_map.

◆ data_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Tp __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::data_type

Definition at line 94 of file hash_map.

◆ difference_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::difference_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::difference_type

Definition at line 101 of file hash_map.

◆ hasher

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::hasher __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hasher

Definition at line 97 of file hash_map.

◆ iterator

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::iterator

Definition at line 107 of file hash_map.

◆ key_equal

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::key_equal __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::key_equal

Definition at line 98 of file hash_map.

◆ key_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::key_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::key_type

Definition at line 93 of file hash_map.

◆ mapped_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Tp __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::mapped_type

Definition at line 95 of file hash_map.

◆ pointer

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::pointer __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::pointer

Definition at line 102 of file hash_map.

◆ reference

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::reference __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::reference

Definition at line 104 of file hash_map.

◆ size_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::size_type

Definition at line 100 of file hash_map.

◆ value_type

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
typedef _Ht::value_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::value_type

Definition at line 96 of file hash_map.

Constructor & Destructor Documentation

◆ hash_map() [1/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( )
inline

Definition at line 124 of file hash_map.

◆ hash_map() [2/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( size_type  __n)
inlineexplicit

Definition at line 128 of file hash_map.

◆ hash_map() [3/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( size_type  __n,
const hasher &  __hf 
)
inline

Definition at line 131 of file hash_map.

◆ hash_map() [4/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( size_type  __n,
const hasher &  __hf,
const key_equal &  __eql,
const allocator_type &  __a = allocator_type() 
)
inline

Definition at line 134 of file hash_map.

◆ hash_map() [5/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
template<class _InputIterator >
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( _InputIterator  __f,
_InputIterator  __l 
)
inline

Definition at line 139 of file hash_map.

◆ hash_map() [6/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
template<class _InputIterator >
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( _InputIterator  __f,
_InputIterator  __l,
size_type  __n 
)
inline

Definition at line 144 of file hash_map.

◆ hash_map() [7/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
template<class _InputIterator >
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( _InputIterator  __f,
_InputIterator  __l,
size_type  __n,
const hasher &  __hf 
)
inline

Definition at line 149 of file hash_map.

◆ hash_map() [8/8]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
template<class _InputIterator >
__gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_map ( _InputIterator  __f,
_InputIterator  __l,
size_type  __n,
const hasher &  __hf,
const key_equal &  __eql,
const allocator_type &  __a = allocator_type() 
)
inline

Definition at line 155 of file hash_map.

Member Function Documentation

◆ begin() [1/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::begin ( )
inline

Definition at line 183 of file hash_map.

◆ begin() [2/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
const_iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::begin ( ) const
inline

Definition at line 191 of file hash_map.

◆ bucket_count()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::bucket_count ( ) const
inline

Definition at line 256 of file hash_map.

◆ clear()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::clear ( )
inline

Definition at line 248 of file hash_map.

◆ count()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::count ( const key_type &  __key) const
inline

Definition at line 224 of file hash_map.

◆ elems_in_bucket()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::elems_in_bucket ( size_type  __n) const
inline

Definition at line 264 of file hash_map.

◆ empty()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
bool __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::empty ( ) const
inline

Definition at line 170 of file hash_map.

◆ end() [1/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::end ( )
inline

Definition at line 187 of file hash_map.

◆ end() [2/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
const_iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::end ( ) const
inline

Definition at line 195 of file hash_map.

◆ equal_range() [1/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
pair< iterator, iterator > __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::equal_range ( const key_type &  __key)
inline

Definition at line 228 of file hash_map.

◆ equal_range() [2/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
pair< const_iterator, const_iterator > __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::equal_range ( const key_type &  __key) const
inline

Definition at line 232 of file hash_map.

◆ erase() [1/3]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::erase ( const key_type &  __key)
inline

Definition at line 236 of file hash_map.

◆ erase() [2/3]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::erase ( iterator  __f,
iterator  __l 
)
inline

Definition at line 244 of file hash_map.

◆ erase() [3/3]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::erase ( iterator  __it)
inline

Definition at line 240 of file hash_map.

◆ find() [1/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::find ( const key_type &  __key)
inline

Definition at line 212 of file hash_map.

◆ find() [2/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
const_iterator __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::find ( const key_type &  __key) const
inline

Definition at line 216 of file hash_map.

◆ get_allocator()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
allocator_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::get_allocator ( ) const
inline

Definition at line 121 of file hash_map.

◆ hash_funct()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
hasher __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::hash_funct ( ) const
inline

Definition at line 113 of file hash_map.

◆ insert() [1/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
template<class _InputIterator >
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::insert ( _InputIterator  __f,
_InputIterator  __l 
)
inline

Definition at line 204 of file hash_map.

◆ insert() [2/2]

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
pair< iterator, bool > __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::insert ( const value_type &  __obj)
inline

Definition at line 199 of file hash_map.

◆ insert_noresize()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
pair< iterator, bool > __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::insert_noresize ( const value_type &  __obj)
inline

Definition at line 208 of file hash_map.

◆ key_eq()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
key_equal __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::key_eq ( ) const
inline

Definition at line 117 of file hash_map.

◆ max_bucket_count()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::max_bucket_count ( ) const
inline

Definition at line 260 of file hash_map.

◆ max_size()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::max_size ( ) const
inline

Definition at line 166 of file hash_map.

◆ operator[]()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
_Tp & __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::operator[] ( const key_type &  __key)
inline

Definition at line 220 of file hash_map.

◆ resize()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::resize ( size_type  __hint)
inline

Definition at line 252 of file hash_map.

◆ size()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
size_type __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::size ( ) const
inline

Definition at line 162 of file hash_map.

◆ swap()

template<class _Key , class _Tp , class _HashFn = hash<_Key>, class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp>>
void __gnu_cxx::hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc >::swap ( hash_map< _Key, _Tp, _HashFn, _EqualKey, _Alloc > &  __hs)
inline

Definition at line 174 of file hash_map.


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