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

Public Types

typedef unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc > _Myt
 
typedef _Uhash_compare< _Kty, _Hasher, _Keyeq > _Mytraits
 
typedef _Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
 
typedef _Hasher hasher
 
typedef _Kty key_type
 
typedef _Ty mapped_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
 
typedef _Mybase::_Alty _Alty
 
typedef _Mybase::_Pairib _Pairib
 
- Public Types inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > >
enum  
 
typedef _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > > _Myt
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false >::key_type key_type
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false >::key_compare key_compare
 
typedef _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false >::value_compare value_compare
 
typedef list< typename _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false >::value_type, typename _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false >::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 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 Member Functions

 unordered_map ()
 
 unordered_map (const allocator_type &_Al)
 
 unordered_map (const _Myt &_Right)
 
 unordered_map (const _Myt &_Right, const allocator_type &_Al)
 
 unordered_map (size_type _Buckets)
 
 unordered_map (size_type _Buckets, const allocator_type &_Al)
 
 unordered_map (size_type _Buckets, const hasher &_Hasharg)
 
 unordered_map (size_type _Buckets, const hasher &_Hasharg, const allocator_type &_Al)
 
 unordered_map (size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
 unordered_map (size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, const allocator_type &_Al)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets, const allocator_type &_Al)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg, const allocator_type &_Al)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
template<class _Iter >
 unordered_map (_Iter _First, _Iter _Last, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
_Mytoperator= (const _Myt &_Right)
 
 unordered_map (_Myt &&_Right)
 
 unordered_map (_Myt &&_Right, const allocator_type &_Al)
 
_Mytoperator= (_Myt &&_Right) _NOEXCEPT_OP(_Alty
 
mapped_typeoperator[] (key_type &&_Keyval)
 
void swap (_Myt &_Right) _NOEXCEPT_OP(_Alty
 
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
_Pairib insert (_Valty &&_Val)
 
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator insert (const_iterator _Where, _Valty &&_Val)
 
template<class _Keyty , class... _Mappedty>
_Pairib _Try_emplace (_Keyty &&_Keyval, _Mappedty &&..._Mapval)
 
template<class... _Mappedty>
_Pairib try_emplace (const key_type &_Keyval, _Mappedty &&..._Mapval)
 
template<class... _Mappedty>
iterator try_emplace (const_iterator, const key_type &_Keyval, _Mappedty &&..._Mapval)
 
template<class... _Mappedty>
_Pairib try_emplace (key_type &&_Keyval, _Mappedty &&..._Mapval)
 
template<class... _Mappedty>
iterator try_emplace (const_iterator, key_type &&_Keyval, _Mappedty &&..._Mapval)
 
template<class _Keyty , class _Mappedty >
_Pairib _Insert_or_assign (_Keyty &&_Keyval, _Mappedty &&_Mapval)
 
template<class _Mappedty >
_Pairib insert_or_assign (const key_type &_Keyval, _Mappedty &&_Mapval)
 
template<class _Mappedty >
iterator insert_or_assign (const_iterator, const key_type &_Keyval, _Mappedty &&_Mapval)
 
template<class _Mappedty >
_Pairib insert_or_assign (key_type &&_Keyval, _Mappedty &&_Mapval)
 
template<class _Mappedty >
iterator insert_or_assign (const_iterator, key_type &&_Keyval, _Mappedty &&_Mapval)
 
 unordered_map (initializer_list< value_type > _Ilist)
 
 unordered_map (initializer_list< value_type > _Ilist, const allocator_type &_Al)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets, const allocator_type &_Al)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg, const allocator_type &_Al)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg)
 
 unordered_map (initializer_list< value_type > _Ilist, size_type _Buckets, const hasher &_Hasharg, const _Keyeq &_Keyeqarg, const allocator_type &_Al)
 
_Mytoperator= (initializer_list< value_type > _Ilist)
 
hasher hash_function () const
 
key_equal key_eq () const
 
mapped_typeoperator[] (const key_type &_Keyval)
 
mapped_typeat (const key_type &_Keyval)
 
const mapped_typeat (const key_type &_Keyval) const
 
- Public Member Functions inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > >
 _Hash (const key_compare &_Parg, const allocator_type &_Al)
 
 _Hash (const _Myt &_Right, const _Any_alloc &_Al)
 
 _Hash (_Myt &&_Right)
 
 _Hash (_Myt &&_Right, const allocator_type &_Al)
 
void _Move_nodes (_Iter _First, _Iter _Last, true_type)
 
void _Move_nodes (_Iter _First, _Iter _Last, false_type)
 
void _Move_assign_list (_Other &_Right, true_type)
 
void _Move_assign_list (_Other &_Right, false_type)
 
_Mytoperator= (_Myt &&_Right)
 
_Mytoperator= (const _Myt &_Right)
 
_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
 
const_iterator cbegin () const _NOEXCEPT
 
const_local_iterator cbegin (size_type _Bucket) const
 
const_iterator cend () const _NOEXCEPT
 
const_local_iterator cend (size_type _Bucket) const
 
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)
 
_Pairib insert (const value_type &_Val)
 
iterator insert (const value_type &_Val)
 
_Pairib insert (value_type &&_Val)
 
iterator insert (value_type &&_Val)
 
iterator insert (const_iterator, const value_type &_Val)
 
iterator insert (const_iterator, value_type &&_Val)
 
void insert (_Iter _First, _Iter _Last)
 
void insert (initializer_list< value_type > _Ilist)
 
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)
 

Additional Inherited Members

- Protected Member Functions inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > >
_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 ()
 
float & _Max_bucket_size () _NOEXCEPT
 
const float & _Max_bucket_size () const _NOEXCEPT
 
- Protected Attributes inherited from _Hash< _Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false > >
_Umap_traits< _Kty, _Ty, _Uhash_compare< _Kty, _Hasher, _Keyeq >, _Alloc, false_Traitsobj
 
_Mylist _List
 
_Myvec _Vec
 
size_type _Mask
 
size_type _Maxidx
 

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 _Mybase::_Alty unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Alty
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, false> > unordered_map< _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_map<_Kty, _Ty, _Hasher, _Keyeq, _Alloc> unordered_map< _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_map< _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::_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Pairib
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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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_map< _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 _Mybase::size_type unordered_map< _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_map< _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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( )
inline
119  { // construct empty map from defaults
120  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( const allocator_type _Al)
inlineexplicit
123  : _Mybase(key_compare(), _Al)
124  { // construct empty map from defaults, allocator
125  }
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( const _Myt _Right)
inline
128  : _Mybase(_Right,
129  _Right._List._Getal().select_on_container_copy_construction())
130  { // construct map by copying _Right
131  }
constexpr const _Ty &() _Right
Definition: algorithm:3723
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( const _Myt _Right,
const allocator_type _Al 
)
inline
134  : _Mybase(_Right, _Al)
135  { // construct map by copying _Right, allocator
136  }
constexpr const _Ty &() _Right
Definition: algorithm:3723
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets)
inlineexplicit
140  { // construct empty map from bucket count
141  _Mybase::rehash(_Buckets);
142  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets,
const allocator_type _Al 
)
inline
145  : _Mybase(key_compare(), _Al)
146  { // construct empty map from bucket count and allocator
147  _Mybase::rehash(_Buckets);
148  }
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets,
const hasher _Hasharg 
)
inline
151  : _Mybase(key_compare(_Hasharg), allocator_type())
152  { // construct empty map from bucket count and hasher
153  _Mybase::rehash(_Buckets);
154  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets,
const hasher _Hasharg,
const allocator_type _Al 
)
inline
158  : _Mybase(key_compare(_Hasharg), _Al)
159  { // construct empty map from bucket count, hasher, and allocator
160  _Mybase::rehash(_Buckets);
161  }
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
165  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
166  { // construct empty map from bucket count, hasher, and equality comparator
167  _Mybase::rehash(_Buckets);
168  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
172  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
173  { // construct empty map from bucket count, hasher, equality comparator, and allocator
174  _Mybase::rehash(_Buckets);
175  }
_Mytraits key_compare
Definition: unordered_map:97
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last 
)
inline
180  { // construct map from sequence, defaults
181  insert(_First, _Last);
182  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
const allocator_type _Al 
)
inline
186  : _Mybase(key_compare(), _Al)
187  { // construct map from sequence and allocator
188  insert(_First, _Last);
189  }
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets 
)
inline
195  { // construct map from sequence and bucket count
196  _Mybase::rehash(_Buckets);
197  insert(_First, _Last);
198  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const allocator_type _Al 
)
inline
203  : _Mybase(key_compare(), _Al)
204  { // construct map from sequence, bucket count, and allocator
205  _Mybase::rehash(_Buckets);
206  insert(_First, _Last);
207  }
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg 
)
inline
212  : _Mybase(key_compare(_Hasharg), allocator_type())
213  { // construct map from sequence, bucket count, and hasher
214  _Mybase::rehash(_Buckets);
215  insert(_First, _Last);
216  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg,
const allocator_type _Al 
)
inline
222  : _Mybase(key_compare(_Hasharg), _Al)
223  { // construct map from sequence, bucket count, hasher, and allocator
224  _Mybase::rehash(_Buckets);
225  insert(_First, _Last);
226  }
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
232  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
233  { // construct map from sequence, bucket count, hasher, and equality comparator
234  _Mybase::rehash(_Buckets);
235  insert(_First, _Last);
236  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
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_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Iter  _First,
_Iter  _Last,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
242  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
243  { // construct map from sequence, bucket count, hasher, equality comparator, and allocator
244  _Mybase::rehash(_Buckets);
245  insert(_First, _Last);
246  }
_FwdIt _Last
Definition: algorithm:1936
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Myt &&  _Right)
inline
255  : _Mybase(_STD move(_Right))
256  { // construct map by moving _Right
257  }
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
constexpr const _Ty &() _Right
Definition: algorithm:3723
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( _Myt &&  _Right,
const allocator_type _Al 
)
inline
260  : _Mybase(_STD move(_Right), _Al)
261  { // construct map by moving _Right, allocator
262  }
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
constexpr const _Ty &() _Right
Definition: algorithm:3723
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist)
inline
399  { // construct map from initializer_list, defaults
400  insert(_Ilist);
401  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
const allocator_type _Al 
)
inline
404  : _Mybase(key_compare(), _Al)
405  { // construct map from initializer_list and allocator
406  insert(_Ilist);
407  }
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets 
)
inline
412  { // construct map from initializer_list and bucket count
413  _Mybase::rehash(_Buckets);
414  insert(_Ilist);
415  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets,
const allocator_type _Al 
)
inline
419  : _Mybase(key_compare(), _Al)
420  { // construct map from initializer_list, bucket count, and allocator
421  _Mybase::rehash(_Buckets);
422  insert(_Ilist);
423  }
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg 
)
inline
427  : _Mybase(key_compare(_Hasharg), allocator_type())
428  { // construct map from initializer_list, bucket count, and hasher
429  _Mybase::rehash(_Buckets);
430  insert(_Ilist);
431  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg,
const allocator_type _Al 
)
inline
435  : _Mybase(key_compare(_Hasharg), _Al)
436  { // construct map from initializer_list, bucket count, hasher, and allocator
437  _Mybase::rehash(_Buckets);
438  insert(_Ilist);
439  }
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg 
)
inline
444  : _Mybase(key_compare(_Hasharg, _Keyeqarg), allocator_type())
445  { // construct map from initializer_list, bucket count, hasher, and equality comparator
446  _Mybase::rehash(_Buckets);
447  insert(_Ilist);
448  }
_Mybase::allocator_type allocator_type
Definition: unordered_map:100
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::unordered_map ( initializer_list< value_type _Ilist,
size_type  _Buckets,
const hasher _Hasharg,
const _Keyeq &  _Keyeqarg,
const allocator_type _Al 
)
inline
453  : _Mybase(key_compare(_Hasharg, _Keyeqarg), _Al)
454  { // construct map from initializer_list, bucket count, hasher, equality comparator, and allocator
455  _Mybase::rehash(_Buckets);
456  insert(_Ilist);
457  }
_Mytraits key_compare
Definition: unordered_map:97
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
_Hash< _Umap_traits< _Kty, _Ty, _Mytraits, _Alloc, false > > _Mybase
Definition: unordered_map:92
void rehash(size_type _Buckets)
Definition: xhash:511

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 _Keyty , class _Mappedty >
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Insert_or_assign ( _Keyty &&  _Keyval,
_Mappedty &&  _Mapval 
)
inline
352  { // assign if _Keyval present, else insert
353  iterator _Where = _Mybase::find(_Keyval);
354  if (_Where == _Mybase::end())
355  return (_Mybase::emplace(
356  _STD forward<_Keyty>(_Keyval),
357  _STD forward<_Mappedty>(_Mapval)));
358  else
359  { // _Keyval present, assign new value
360  _Where->second = _STD forward<_Mappedty>(_Mapval);
361  return (_Pairib(_Where, false));
362  }
363  }
Definition: xutility:565
iterator find(const key_type &_Keyval)
Definition: xhash:623
_Mybase::_Pairib _Pairib
Definition: unordered_map:115
_Pairib emplace(_Valty &&..._Val)
Definition: xhash:293
iterator end() _NOEXCEPT
Definition: xhash:335
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Keyty , class... _Mappedty>
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::_Try_emplace ( _Keyty &&  _Keyval,
_Mappedty &&...  _Mapval 
)
inline
306  { // fail if _Keyval present, else emplace
307  iterator _Where = _Mybase::find(_Keyval);
308  if (_Where == _Mybase::end())
309  return (_Mybase::emplace(
311  _STD forward_as_tuple(_STD forward<_Keyty>(_Keyval)),
312  _STD forward_as_tuple(_STD forward<_Mappedty>(_Mapval)...)));
313  else
314  return (_Pairib(_Where, false));
315  }
constexpr tuple< _Types &&...> forward_as_tuple(_Types &&..._Args) _NOEXCEPT
Definition: tuple:910
Definition: xutility:565
constexpr piecewise_construct_t piecewise_construct
Definition: utility:84
iterator find(const key_type &_Keyval)
Definition: xhash:623
_Mybase::_Pairib _Pairib
Definition: unordered_map:115
_Pairib emplace(_Valty &&..._Val)
Definition: xhash:293
iterator end() _NOEXCEPT
Definition: xhash:335
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
mapped_type& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::at ( const key_type _Keyval)
inline
482  { // find element matching _Keyval
483  iterator _Where = _Mybase::lower_bound(_Keyval);
484  if (_Where == _Mybase::end())
485  _Xout_of_range("invalid unordered_map<K, T> key");
486  return (_Where->second);
487  }
Definition: xutility:565
iterator lower_bound(const key_type &_Keyval)
Definition: xhash:639
_CRTIMP2_PURE void __CLRCALL_PURE_OR_CDECL _Xout_of_range(_In_z_ const char *)
iterator end() _NOEXCEPT
Definition: xhash:335
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
const mapped_type& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::at ( const key_type _Keyval) const
inline
490  { // find element matching _Keyval
491  const_iterator _Where = _Mybase::lower_bound(_Keyval);
492  if (_Where == _Mybase::end())
493  _Xout_of_range("invalid unordered_map<K, T> key");
494  return (_Where->second);
495  }
iterator lower_bound(const key_type &_Keyval)
Definition: xhash:639
_CRTIMP2_PURE void __CLRCALL_PURE_OR_CDECL _Xout_of_range(_In_z_ const char *)
iterator end() _NOEXCEPT
Definition: xhash:335
_Mybase::const_iterator const_iterator
Definition: unordered_map:108
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
hasher unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::hash_function ( ) const
inline
467  { // return hasher object
468  return (_Mybase::_Traitsobj._Gethash());
469  }
_Traits _Traitsobj
Definition: xhash:963
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Valty , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( _Valty &&  _Val)
inline
291  { // insert _Val
292  return (this->emplace(_STD forward<_Valty>(_Val)));
293  }
_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 , class = enable_if_t<is_constructible<value_type, _Valty>::value>>
iterator unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert ( const_iterator  _Where,
_Valty &&  _Val 
)
inline
298  { // insert _Val with hint
299  return (this->emplace_hint(_Where, _STD forward<_Valty>(_Val)));
300  }
iterator emplace_hint(const_iterator, _Valty &&..._Val)
Definition: xhash:300
_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 _Mappedty >
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert_or_assign ( const key_type _Keyval,
_Mappedty &&  _Mapval 
)
inline
368  { // assign if _Keyval present, else insert
369  return (_Insert_or_assign(_Keyval,
370  _STD forward<_Mappedty>(_Mapval)));
371  }
_Pairib _Insert_or_assign(_Keyty &&_Keyval, _Mappedty &&_Mapval)
Definition: unordered_map:350
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Mappedty >
iterator unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert_or_assign ( const_iterator  ,
const key_type _Keyval,
_Mappedty &&  _Mapval 
)
inline
376  { // assign if _Keyval present, else insert, ignore hint
377  return (_Insert_or_assign(_Keyval,
378  _STD forward<_Mappedty>(_Mapval)).first);
379  }
_Pairib _Insert_or_assign(_Keyty &&_Keyval, _Mappedty &&_Mapval)
Definition: unordered_map:350
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Mappedty >
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert_or_assign ( key_type &&  _Keyval,
_Mappedty &&  _Mapval 
)
inline
384  { // assign if _Keyval present, else insert
385  return (_Insert_or_assign(_STD move(_Keyval),
386  _STD forward<_Mappedty>(_Mapval)));
387  }
_Pairib _Insert_or_assign(_Keyty &&_Keyval, _Mappedty &&_Mapval)
Definition: unordered_map:350
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class _Mappedty >
iterator unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::insert_or_assign ( const_iterator  ,
key_type &&  _Keyval,
_Mappedty &&  _Mapval 
)
inline
392  { // assign if _Keyval present, else insert, ignore hint
393  return (_Insert_or_assign(_STD move(_Keyval),
394  _STD forward<_Mappedty>(_Mapval)).first);
395  }
_Pairib _Insert_or_assign(_Keyty &&_Keyval, _Mappedty &&_Mapval)
Definition: unordered_map:350
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
key_equal unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::key_eq ( ) const
inline
472  { // return equality comparator object
473  return (_Mybase::_Traitsobj._Getkeyeq());
474  }
_Traits _Traitsobj
Definition: xhash:963
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( const _Myt _Right)
inline
249  { // assign by copying _Right
251  return (*this);
252  }
_Myt & operator=(_Myt &&_Right)
Definition: xhash:275
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( _Myt &&  _Right)
inline
268  { // assign by moving _Right
270  return (*this);
271  }
_Myt & operator=(_Myt &&_Right)
Definition: xhash:275
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
_Myt& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator= ( initializer_list< value_type _Ilist)
inline
460  { // assign initializer_list
461  _Mybase::clear();
462  insert(_Ilist);
463  return (*this);
464  }
void clear() _NOEXCEPT
Definition: xhash:617
_Pairib insert(_Valty &&_Val)
Definition: unordered_map:290
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
mapped_type& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator[] ( key_type &&  _Keyval)
inline
274  { // find element matching _Keyval or insert with default mapped
275  return (try_emplace(_STD move(_Keyval)).first->second);
276  }
_Ty2 second
Definition: utility:271
_Pairib try_emplace(const key_type &_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:318
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
mapped_type& unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::operator[] ( const key_type _Keyval)
inline
477  { // find element matching _Keyval or insert with default mapped
478  return (try_emplace(_Keyval).first->second);
479  }
_Ty2 second
Definition: utility:271
_Pairib try_emplace(const key_type &_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:318
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
void unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::swap ( _Myt _Right)
inline
282  { // exchange contents with non-movable _Right
284  }
void swap(_Myt &_Right)
Definition: xhash:721
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Mappedty>
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::try_emplace ( const key_type _Keyval,
_Mappedty &&...  _Mapval 
)
inline
320  { // fail if _Keyval present, else emplace
321  return (_Try_emplace(_Keyval, _STD forward<_Mappedty>(_Mapval)...));
322  }
_Pairib _Try_emplace(_Keyty &&_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:304
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Mappedty>
iterator unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::try_emplace ( const_iterator  ,
const key_type _Keyval,
_Mappedty &&...  _Mapval 
)
inline
327  { // fail if _Keyval present, else emplace, ignore hint
328  return (_Try_emplace(_Keyval,
329  _STD forward<_Mappedty>(_Mapval)...).first);
330  }
_Pairib _Try_emplace(_Keyty &&_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:304
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Mappedty>
_Pairib unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::try_emplace ( key_type &&  _Keyval,
_Mappedty &&...  _Mapval 
)
inline
335  { // fail if _Keyval present, else emplace
336  return (_Try_emplace(_STD move(_Keyval),
337  _STD forward<_Mappedty>(_Mapval)...));
338  }
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
_Pairib _Try_emplace(_Keyty &&_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:304
template<class _Kty, class _Ty, class _Hasher = hash<_Kty>, class _Keyeq = equal_to<_Kty>, class _Alloc = allocator<pair<const _Kty, _Ty> >>
template<class... _Mappedty>
iterator unordered_map< _Kty, _Ty, _Hasher, _Keyeq, _Alloc >::try_emplace ( const_iterator  ,
key_type &&  _Keyval,
_Mappedty &&...  _Mapval 
)
inline
343  { // fail if _Keyval present, else emplace, ignore hint
344  return (_Try_emplace(_STD move(_Keyval),
345  _STD forward<_Mappedty>(_Mapval)...).first);
346  }
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1349
_Pairib _Try_emplace(_Keyty &&_Keyval, _Mappedty &&..._Mapval)
Definition: unordered_map:304

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