STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc > Class Template Reference
Inheritance diagram for unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >:
_Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > > _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > _Uhash_compare< _Kty, _Hasher, _Keyeq > _Hash_oper2<!is_empty< _Keyeq >::value, _Hasher, _Keyeq > _Hash_oper1<!is_empty< _Hasher >::value, _Hasher >

Public Types

typedef unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc > _Myt
 
typedef _Uhash_compare< _Kty, _Hasher, _Keyeq > _Mytraits
 
typedef _Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
 
typedef _Hasher hasher
 
typedef _Kty key_type
 
typedef _Ty mapped_type
 
typedef _Ty referent_type
 
typedef _Keyeq key_equal
 
typedef _Mytraits key_compare
 
typedef _Mybase::allocator_type allocator_type
 
typedef _Mybase::size_type size_type
 
typedef _Mybase::difference_type difference_type
 
typedef _Mybase::pointer pointer
 
typedef _Mybase::const_pointer const_pointer
 
typedef _Mybase::reference reference
 
typedef _Mybase::const_reference const_reference
 
typedef _Mybase::iterator iterator
 
typedef _Mybase::const_iterator const_iterator
 
typedef _Mybase::value_type value_type
 
typedef _Mybase::iterator local_iterator
 
typedef _Mybase::const_iterator const_local_iterator
 
- Public Types inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > >
enum  
 
typedef _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > > _Myt
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >::key_type key_type
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >::key_compare key_compare
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >::value_compare value_compare
 
typedef list< typename _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >::value_type, typename _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >::allocator_type_Mylist
 
typedef _Mylist::_Alty _Alty
 
typedef _Mylist::value_type value_type
 
typedef _Mylist::allocator_type allocator_type
 
typedef _Mylist::size_type size_type
 
typedef _Mylist::difference_type difference_type
 
typedef _Mylist::pointer pointer
 
typedef _Mylist::const_pointer const_pointer
 
typedef _Mylist::reference reference
 
typedef _Mylist::const_reference const_reference
 
typedef _If< is_same< key_type, value_type >::value, typename _Mylist::const_iterator, typename _Mylist::iterator >::type iterator
 
typedef _Mylist::const_iterator const_iterator
 
typedef _If< is_same< key_type, value_type >::value, typename _Mylist::_Unchecked_const_iterator, typename _Mylist::_Unchecked_iterator >::type _Unchecked_iterator
 
typedef _Mylist::_Unchecked_const_iterator _Unchecked_const_iterator
 
typedef _STD reverse_iterator< iteratorreverse_iterator
 
typedef _STD reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef vector< _Unchecked_iterator, typename _Alty::template rebind< _Unchecked_iterator >::other > _Myvec
 
typedef pair< iterator, bool_Pairib
 
typedef pair< iterator, iterator_Pairii
 
typedef pair< const_iterator, const_iterator_Paircc
 
typedef iterator local_iterator
 
typedef const_iterator const_local_iterator
 
- Public Types inherited from _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >
enum  
 
typedef _Kty key_type
 
typedef pair< const _Kty, _Ty > value_type
 
typedef _Uhash_compare< _Kty, _Hasher, _Keyeq > key_compare
 
typedef _Alloc allocator_type
 
- Public Types inherited from _Uhash_compare< _Kty, _Hasher, _Keyeq >
enum  { bucket_size = 1 }
 
typedef _Hash_oper2<!is_empty< _Keyeq >::value, _Hasher, _Keyeq > _Mybase
 
- Public Types inherited from _Hash_oper2<!is_empty< _Keyeq >::value, _Hasher, _Keyeq >
typedef _Hash_oper1<!is_empty< _Hasher >::value, _Hasher > _Mybase
 
- Public Types inherited from _Hash_oper1<!is_empty< _Hasher >::value, _Hasher >
typedef _Hasher hasher
 

Public Member Functions

 unordered_multimap ()
 
 unordered_multimap (const allocator_type &_Al)
 
 unordered_multimap (const _Myt &_Right)
 
 unordered_multimap (const _Myt &_Right, const allocator_type &_Al)
 
 unordered_multimap (size_type _Buckets)
 
 unordered_multimap (size_type _Buckets, const hasher &_Hasharg)
 
 unordered_multimap (size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
 unordered_multimap (size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
template<class _Iter >
 unordered_multimap (_Iter _First, _Iter _Last)
 
template<class _Iter >
 unordered_multimap (_Iter _First, _Iter _Last, size_type _Buckets)
 
template<class _Iter >
 unordered_multimap (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg)
 
template<class _Iter >
 unordered_multimap (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
template<class _Iter >
 unordered_multimap (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
_Mytoperator= (const _Myt &_Right)
 
 unordered_multimap (_Myt &&_Right)
 
 unordered_multimap (_Myt &&_Right, const allocator_type &_Al)
 
_Mytoperator= (_Myt &&_Right)
 
template<class _Valty >
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert (_Valty &&_Val)
 
template<class _Valty >
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert (const_iterator _Where, _Valty &&_Val)
 
template<class... _Valty>
iterator emplace (_Valty &&..._Val)
 
void swap (_Myt &_Right)
 
 unordered_multimap (_XSTD initializer_list< value_type > _Ilist)
 
 unordered_multimap (_XSTD initializer_list< value_type > _Ilist, size_type _Buckets)
 
 unordered_multimap (_XSTD initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg)
 
 unordered_multimap (_XSTD initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
 unordered_multimap (_XSTD initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
_Mytoperator= (_XSTD initializer_list< value_type > _Ilist)
 
void insert (_XSTD initializer_list< value_type > _Ilist)
 
hasher hash_function () const
 
key_equal key_eq () const
 
iterator insert (const value_type &_Val)
 
iterator insert (const_iterator _Where, const value_type &_Val)
 
template<class _Iter >
void insert (_Iter _First, _Iter _Last)
 
- Public Member Functions inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > >
 _Hash (const key_compare &_Parg, const allocator_type &_Al)
 
 _Hash (const value_type *_First, const value_type *_Last, const key_compare &_Parg, const allocator_type &_Al)
 
 _Hash (const _Myt &_Right, const allocator_type &_Al)
 
 _Hash (_Myt &&_Right, const allocator_type &_Al)
 
_Mytoperator= (_Myt &&_Right)
 
_Mytoperator= (const _Myt &_Right)
 
void _Assign_rv (_Myt &&_Right)
 
_Pairib insert (value_type &&_Val)
 
iterator insert (const_iterator, value_type &&_Val)
 
enable_if< is_convertible< _Valty, value_type >::value, _Pairib >::type insert (_Valty &&_Val)
 
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert (const_iterator, _Valty &&_Val)
 
_Pairib insert (const value_type &_Val)
 
iterator insert (const_iterator, const value_type &_Val)
 
void insert (_Iter _First, _Iter _Last)
 
void insert (_XSTD initializer_list< value_type > _Ilist)
 
_Pairib emplace (_Valty &&..._Val)
 
iterator emplace_hint (const_iterator, _Valty &&..._Val)
 
 ~_Hash () _NOEXCEPT
 
iterator begin () _NOEXCEPT
 
const_iterator begin () const _NOEXCEPT
 
local_iterator begin (size_type _Bucket)
 
const_local_iterator begin (size_type _Bucket) const
 
iterator end () _NOEXCEPT
 
const_iterator end () const _NOEXCEPT
 
local_iterator end (size_type _Bucket)
 
const_local_iterator end (size_type _Bucket) const
 
_Unchecked_iterator _Unchecked_begin ()
 
_Unchecked_const_iterator _Unchecked_begin () const
 
_Unchecked_iterator _Unchecked_end ()
 
_Unchecked_const_iterator _Unchecked_end () const
 
iterator _Make_iter (_Unchecked_const_iterator _Where) const
 
iterator _Make_iter (const_iterator _Where) const
 
reverse_iterator rbegin () _NOEXCEPT
 
const_reverse_iterator rbegin () const _NOEXCEPT
 
reverse_iterator rend () _NOEXCEPT
 
const_reverse_iterator rend () const _NOEXCEPT
 
const_iterator cbegin () const _NOEXCEPT
 
const_local_iterator cbegin (size_type _Bucket) const _NOEXCEPT
 
const_iterator cend () const _NOEXCEPT
 
const_local_iterator cend (size_type _Bucket) const _NOEXCEPT
 
const_reverse_iterator crbegin () const _NOEXCEPT
 
const_reverse_iterator crend () const _NOEXCEPT
 
size_type size () const _NOEXCEPT
 
size_type max_size () const _NOEXCEPT
 
bool empty () const _NOEXCEPT
 
allocator_type get_allocator () const _NOEXCEPT
 
key_compare key_comp () const
 
value_compare value_comp () const
 
size_type bucket_count () const _NOEXCEPT
 
size_type max_bucket_count () const _NOEXCEPT
 
size_type bucket (const key_type &_Keyval) const
 
size_type bucket_size (size_type _Bucket) const
 
float load_factor () const _NOEXCEPT
 
float max_load_factor () const _NOEXCEPT
 
void max_load_factor (float _Newmax)
 
void rehash (size_type _Buckets)
 
void reserve (size_type _Maxcount)
 
iterator erase (const_iterator _Plist)
 
iterator erase (const_iterator _First, const_iterator _Last)
 
size_type erase (const key_type &_Keyval)
 
void clear () _NOEXCEPT
 
iterator find (const key_type &_Keyval)
 
const_iterator find (const key_type &_Keyval) const
 
size_type count (const key_type &_Keyval) const
 
iterator lower_bound (const key_type &_Keyval)
 
const_iterator lower_bound (const key_type &_Keyval) const
 
iterator upper_bound (const key_type &_Keyval)
 
const_iterator upper_bound (const key_type &_Keyval) const
 
_Pairii equal_range (const key_type &_Keyval)
 
_Paircc equal_range (const key_type &_Keyval) const
 
void swap (_Myt &_Right)
 
- Public Member Functions inherited from _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >
 _Umap_traits (const _Uhash_compare< _Kty, _Hasher, _Keyeq > &_Traits=_Uhash_compare< _Kty, _Hasher, _Keyeq >())
 
- Public Member Functions inherited from _Uhash_compare< _Kty, _Hasher, _Keyeq >
 _Uhash_compare (_Hasher _Hasharg=_Hasher(), _Keyeq _Keyeqarg=_Keyeq())
 
 _Uhash_compare (_Keyeq _Keyeqarg)
 
size_t operator() (const _Kty &_Keyval) const
 
bool operator() (const _Kty &_Keyval1, const _Kty &_Keyval2) const
 
- Public Member Functions inherited from _Hash_oper2<!is_empty< _Keyeq >::value, _Hasher, _Keyeq >
 _Hash_oper2 (_Hasher _Hasharg=_Hasher(), _Keyeq _Keyeqarg=_Keyeq())
 
const _Keyeq & _Getkeyeq () const
 
- Public Member Functions inherited from _Hash_oper1<!is_empty< _Hasher >::value, _Hasher >
 _Hash_oper1 (_Hasher _Hasharg)
 
const hasher_Gethash () const
 

Additional Inherited Members

- Static Public Member Functions inherited from _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true >
static const _Kty & _Kfn (const pair< _Ty1, _Ty2 > &_Val)
 
static const _Ty2 & _Nonkfn (const pair< _Ty1, _Ty2 > &_Val)
 
- Public Attributes inherited from _Hash_oper2<!is_empty< _Keyeq >::value, _Hasher, _Keyeq >
_Keyeq _Keyeqobj
 
- Public Attributes inherited from _Hash_oper1<!is_empty< _Hasher >::value, _Hasher >
_Hasher _Hashobj
 
- Protected Member Functions inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > >
_Unchecked_iterator _Buynode_if_nil (_Valty &&, _Unchecked_iterator _Plist)
 
_Unchecked_iterator _Buynode_if_nil (_Valty &&_Val, _Nil)
 
void _Destroy_if_not_nil (_Unchecked_iterator _Plist)
 
void _Destroy_if_not_nil (_Nil)
 
_Pairib _Insert (_Valty &&_Val, _Nodety _Pnode)
 
_Unchecked_iterator_Vec_lo (size_type _Bucket)
 
_Unchecked_const_iterator_Vec_lo (size_type _Bucket) const
 
_Unchecked_iterator_Vec_hi (size_type _Bucket)
 
_Unchecked_const_iterator_Vec_hi (size_type _Bucket) const
 
_Unchecked_iterator _Begin (size_type _Bucket)
 
_Unchecked_const_iterator _Begin (size_type _Bucket) const
 
_Unchecked_iterator _End (size_type _Bucket)
 
_Unchecked_const_iterator _End (size_type _Bucket) const
 
void _Erase_bucket (iterator _Plist_arg, size_type _Bucket)
 
void _Insert_bucket (_Unchecked_iterator _Plist, _Unchecked_iterator _Where, size_type _Bucket)
 
void _Copy (const _Myt &_Right)
 
size_type _Hashval (const key_type &_Keyval) const
 
void _Init (size_type _Buckets=_Min_buckets)
 
void _Check_size ()
 
void _Reinsert ()
 
- Protected Attributes inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, true > >
_Mylist _List
 
_Myvec _Vec
 
size_type _Mask
 
size_type _Maxidx
 
float _Max_bucket_size
 

Member Typedef Documentation

template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Hash<_Umap_traits<_Kty, _Ty, _Mytraits, _Alloc, true> > unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Mybase
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef unordered_multimap<_Kty, _Ty, _Hasher, _Keyeq, _Alloc> unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Myt
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Uhash_compare<_Kty, _Hasher, _Keyeq> unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Mytraits
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::allocator_type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::allocator_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::const_iterator
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::const_local_iterator
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_pointer unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::const_pointer
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::const_reference unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::const_reference
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::difference_type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::difference_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Hasher unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::hasher
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::iterator
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mytraits unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::key_compare
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Keyeq unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::key_equal
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Kty unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::key_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::local_iterator
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Ty unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::mapped_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::pointer unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::pointer
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::reference unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::reference
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Ty unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::referent_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::size_type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::size_type
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
typedef _Mybase::value_type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::value_type

Constructor & Destructor Documentation

template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( )
inline
414  { // construct empty map from defaults
415  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( const allocator_type _Al)
inlineexplicit
418  : _Mybase(key_compare(), _Al)
419  { // construct empty map from defaults, allocator
420  }
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( const _Myt _Right)
inline
424  : _Mybase(_Right,
425  _Right._List._Getal().select_on_container_copy_construction())
426 
427 
428  { // construct map by copying _Right
429  }
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( const _Myt _Right,
const allocator_type _Al 
)
inline
432  : _Mybase(_Right, _Al)
433  { // construct map by copying _Right, allocator
434  }
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( size_type  _Buckets)
inlineexplicit
438  { // construct empty map from defaults, ignore initial size
439  this->rehash(_Buckets);
440  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( size_type  _Buckets,
const hasher _Hasharg 
)
inline
443  : _Mybase(key_compare(_Hasharg), allocator_type())
444  { // construct empty map from hasher
445  this->rehash(_Buckets);
446  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
450  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
451  { // construct empty map from hasher and equality comparator
452  this->rehash(_Buckets);
453  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
457  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
458  { // construct empty map from hasher and equality comparator
459  this->rehash(_Buckets);
460  }
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Iter  _First,
_Iter  _Last 
)
inline
465  { // construct map from sequence, defaults
466  _Mybase::insert(_First, _Last);
467  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets 
)
inline
473  { // construct map from sequence, defaults, ignore initial size
474  this->rehash(_Buckets);
475  _Mybase::insert(_First, _Last);
476  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg 
)
inline
481  : _Mybase(key_compare(_Hasharg), allocator_type())
482  { // construct map from sequence, comparator
483  this->rehash(_Buckets);
484  _Mybase::insert(_First, _Last);
485  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
491  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
492  { // construct map from sequence, comparator, and allocator
493  this->rehash(_Buckets);
494  _Mybase::insert(_First, _Last);
495  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
501  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
502  { // construct map from sequence, comparator, and allocator
503  this->rehash(_Buckets);
504  _Mybase::insert(_First, _Last);
505  }
_Mytraits key_compare
Definition: unordered_map:392
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Myt &&  _Right)
inline
514  : _Mybase(_STD move(_Right), _Right._List._Getal())
515  { // construct map by moving _Right
516  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _Myt &&  _Right,
const allocator_type _Al 
)
inline
519  : _Mybase(_STD move(_Right), _Al)
520  { // construct map by moving _Right, allocator
521  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _XSTD initializer_list< value_type _Ilist)
inline
559  { // construct map from initializer_list, defaults
560  this->insert(_Ilist.begin(), _Ilist.end());
561  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _XSTD initializer_list< value_type _Ilist,
size_type  _Buckets 
)
inline
566  { // construct map from initializer_list
567  this->rehash(_Buckets);
568  this->insert(_Ilist.begin(), _Ilist.end());
569  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _XSTD initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg 
)
inline
573  : _Mybase(key_compare(_Hasharg), allocator_type())
574  { // construct map from initializer_list, hasher
575  this->rehash(_Buckets);
576  this->insert(_Ilist.begin(), _Ilist.end());
577  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _XSTD initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
582  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
583  { // construct map from initializer_list, comparator
584  this->rehash(_Buckets);
585  this->insert(_Ilist.begin(), _Ilist.end());
586  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:395
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_multimap ( _XSTD initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
591  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
592  { // construct map from initializer_list, allocator
593  this->rehash(_Buckets);
594  this->insert(_Ilist.begin(), _Ilist.end());
595  }
_Mytraits key_compare
Definition: unordered_map:392
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, true > > _Mybase
Definition: unordered_map:386
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532

Member Function Documentation

template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Valty>
iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::emplace ( _Valty &&...  _Val)
inline
547  { // try to insert value_type(_Val...), favoring right side
548  return (_Mybase::emplace(_STD forward<_Valty>(_Val)...).first);
549  }
_Pairib emplace(_Valty &&..._Val)
Definition: xhash:392
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
hasher unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::hash_function ( ) const
inline
610  { // return hasher object
611  return (this->_Gethash());
612  }
const hasher & _Gethash() const
Definition: xhash:145
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Valty >
enable_if<is_convertible<_Valty, value_type>::value, iterator>::type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( _Valty &&  _Val)
inline
533  { // insert a {key, mapped} value
534  return (_Mybase::insert(_STD forward<_Valty>(_Val)).first);
535  }
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Valty >
enable_if<is_convertible<_Valty, value_type>::value, iterator>::type unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( const_iterator  _Where,
_Valty &&  _Val 
)
inline
541  { // insert a {key, mapped} value, with hint
542  return (_Mybase::insert(_Where, _STD forward<_Valty>(_Val)));
543  }
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
void unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( _XSTD initializer_list< value_type _Ilist)
inline
605  { // insert initializer_list
606  this->insert(_Ilist.begin(), _Ilist.end());
607  }
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( const value_type _Val)
inline
620  { // insert a {key, mapped} value
621  return (_Mybase::insert(_Val).first);
622  }
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
iterator unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( const_iterator  _Where,
const value_type _Val 
)
inline
625  { // insert a {key, mapped} value, with hint
626  return (_Mybase::insert(_Where, _Val));
627  }
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_FwdIt const _Ty _Val
Definition: algorithm:1938
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Iter >
void unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( _Iter  _First,
_Iter  _Last 
)
inline
631  { // insert [_First, _Last), arbitrary iterators
632  _Mybase::insert(_First, _Last);
633  }
_Pairib insert(value_type &&_Val)
Definition: xhash:363
_FwdIt _Last
Definition: algorithm:1936
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
key_equal unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::key_eq ( ) const
inline
615  { // return equality comparator object
616  return (this->_Getkeyeq());
617  }
const _Keyeq & _Getkeyeq() const
Definition: xhash:185
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( const _Myt _Right)
inline
508  { // assign by copying _Right
510  return (*this);
511  }
_Myt & operator=(_Myt &&_Right)
Definition: xhash:350
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( _Myt &&  _Right)
inline
524  { // assign by moving _Right
526  return (*this);
527  }
_Myt & operator=(_Myt &&_Right)
Definition: xhash:350
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
const _Ty & _Right
Definition: algorithm:4087
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( _XSTD initializer_list< value_type _Ilist)
inline
598  { // assign initializer_list
599  this->clear();
600  this->insert(_Ilist.begin(), _Ilist.end());
601  return (*this);
602  }
enable_if< is_convertible< _Valty, value_type >::value, iterator >::type insert(_Valty &&_Val)
Definition: unordered_map:532
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
void unordered_multimap< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::swap ( _Myt _Right)
inline
553  { // exchange contents with non-movable _Right
555  }
void swap(_Myt &_Right)
Definition: xhash:821
const _Ty & _Right
Definition: algorithm:4087

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