Quick Links: |
#include <bslstl_unorderedmap.h>
Public Types | |
typedef KEY | key_type |
typedef VALUE | mapped_type |
typedef bsl::pair< const KEY, VALUE > | value_type |
typedef HASH | hasher |
typedef EQUAL | key_equal |
typedef ALLOCATOR | allocator_type |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef AllocatorTraits::size_type | size_type |
typedef AllocatorTraits::difference_type | difference_type |
typedef AllocatorTraits::pointer | pointer |
typedef AllocatorTraits::const_pointer | const_pointer |
typedef BloombergLP::bslstl::HashTableIterator < value_type, difference_type > | iterator |
typedef BloombergLP::bslstl::HashTableIterator < const value_type, difference_type > | const_iterator |
typedef BloombergLP::bslstl::HashTableBucketIterator < value_type, difference_type > | local_iterator |
typedef BloombergLP::bslstl::HashTableBucketIterator < const value_type, difference_type > | const_local_iterator |
Public Member Functions | |
unordered_map (size_type initialNumBuckets, const HASH &hashFunction=HASH(), const EQUAL &keyEqual=EQUAL(), const ALLOCATOR &basicAllocator=ALLOCATOR()) | |
unordered_map (size_type initialNumBuckets, const HASH &hashFunction, const ALLOCATOR &basicAllocator) | |
unordered_map (size_type initialNumBuckets, const ALLOCATOR &basicAllocator) | |
unordered_map (const ALLOCATOR &basicAllocator) | |
unordered_map () | |
template<class INPUT_ITERATOR > | |
unordered_map (INPUT_ITERATOR first, INPUT_ITERATOR last, size_type initialNumBuckets=0, const HASH &hashFunction=HASH(), const EQUAL &keyEqual=EQUAL(), const ALLOCATOR &basicAllocator=ALLOCATOR()) | |
template<class INPUT_ITERATOR > | |
unordered_map (INPUT_ITERATOR first, INPUT_ITERATOR last, size_type initialNumBuckets, const HASH &hashFunction, const ALLOCATOR &basicAllocator) | |
template<class INPUT_ITERATOR > | |
unordered_map (INPUT_ITERATOR first, INPUT_ITERATOR last, size_type initialNumBuckets, const ALLOCATOR &basicAllocator) | |
template<class INPUT_ITERATOR > | |
unordered_map (INPUT_ITERATOR first, INPUT_ITERATOR last, const ALLOCATOR &basicAllocator) | |
unordered_map (std::initializer_list< value_type > values, size_type initialNumBuckets=0, const HASH &hashFunction=HASH(), const EQUAL &keyEqual=EQUAL(), const ALLOCATOR &basicAllocator=ALLOCATOR()) | |
unordered_map (std::initializer_list< value_type > values, size_type initialNumBuckets, const HASH &hashFunction, const ALLOCATOR &basicAllocator) | |
unordered_map (std::initializer_list< value_type > values, size_type initialNumBuckets, const ALLOCATOR &basicAllocator) | |
unordered_map (std::initializer_list< value_type > values, const ALLOCATOR &basicAllocator) | |
unordered_map (const unordered_map &original) | |
unordered_map (const unordered_map &original, const typename type_identity< ALLOCATOR >::type &basicAllocator) | |
unordered_map (BloombergLP::bslmf::MovableRef< unordered_map > original) | |
unordered_map (BloombergLP::bslmf::MovableRef< unordered_map > original, const typename type_identity< ALLOCATOR >::type &basicAllocator) | |
~unordered_map () | |
unordered_map & | operator= (const unordered_map &rhs) |
unordered_map &operator=(BloombergLP::bslmf::MovableRef < unordered_map > rhs) BSLS_KEYWORD_NOEXCEPT_SPECIFICATION(AllocatorTraits unordered_map & | operator= (std::initializer_list< value_type > rhs) |
add_lvalue_reference< VALUE >::type | operator[] (const key_type &key) |
add_lvalue_reference< VALUE >::type | operator[] (BloombergLP::bslmf::MovableRef< key_type > key) |
add_lvalue_reference< VALUE >::type | at (const key_type &key) |
iterator | begin () BSLS_KEYWORD_NOEXCEPT |
iterator | end () BSLS_KEYWORD_NOEXCEPT |
local_iterator | begin (size_type index) |
local_iterator | end (size_type index) |
void | clear () BSLS_KEYWORD_NOEXCEPT |
template<class... Args> | |
pair< iterator, bool > | emplace (Args &&...args) |
template<class... Args> | |
iterator | emplace_hint (const_iterator hint, Args &&...args) |
iterator | erase (const_iterator position) |
iterator | erase (iterator position) |
size_type | erase (const key_type &key) |
iterator | erase (const_iterator first, const_iterator last) |
template<class LOOKUP_KEY > | |
enable_if < BloombergLP::bslmf::IsTransparentPredicate < HASH, LOOKUP_KEY >::value &&BloombergLP::bslmf::IsTransparentPredicate < EQUAL, LOOKUP_KEY >::value, iterator >::type | find (const LOOKUP_KEY &key) |
iterator | find (const key_type &key) |
pair< iterator, bool > | insert (const value_type &value) |
template<class ALT_VALUE_TYPE > | |
enable_if< is_convertible < ALT_VALUE_TYPE, value_type > ::value, pair< iterator, bool > >::type | insert (BSLS_COMPILERFEATURES_FORWARD_REF(ALT_VALUE_TYPE) value) |
iterator | insert (const_iterator hint, const value_type &value) |
template<class ALT_VALUE_TYPE > | |
enable_if< is_convertible < ALT_VALUE_TYPE, value_type > ::value, iterator >::type | insert (const_iterator hint, BSLS_COMPILERFEATURES_FORWARD_REF(ALT_VALUE_TYPE) value) |
template<class INPUT_ITERATOR > | |
void | insert (INPUT_ITERATOR first, INPUT_ITERATOR last) |
void | insert (std::initializer_list< value_type > values) |
template<class BDE_OTHER_TYPE > | |
pair< iterator, bool > | insert_or_assign (const KEY &key, BDE_OTHER_TYPE &&obj) |
template<class BDE_OTHER_TYPE > | |
pair< iterator, bool > | insert_or_assign (BloombergLP::bslmf::MovableRef< KEY > key, BDE_OTHER_TYPE &&obj) |
template<class BDE_OTHER_TYPE > | |
iterator | insert_or_assign (const_iterator hint, const KEY &key, BDE_OTHER_TYPE &&obj) |
template<class BDE_OTHER_TYPE > | |
iterator | insert_or_assign (const_iterator hint, BloombergLP::bslmf::MovableRef< KEY > key, BDE_OTHER_TYPE &&obj) |
template<class LOOKUP_KEY > | |
enable_if < BloombergLP::bslmf::IsTransparentPredicate < HASH, LOOKUP_KEY >::value &&BloombergLP::bslmf::IsTransparentPredicate < EQUAL, LOOKUP_KEY >::value, pair< iterator, iterator > >::type | equal_range (const LOOKUP_KEY &key) |
pair< iterator, iterator > | equal_range (const key_type &key) |
void | max_load_factor (float newMaxLoadFactor) |
void | rehash (size_type numBuckets) |
void | reserve (size_type numElements) |
template<class... Args> | |
pair< iterator, bool > | try_emplace (BloombergLP::bslmf::MovableRef< KEY > key, Args &&...args) |
template<class... Args> | |
iterator | try_emplace (const_iterator hint, const KEY &key, Args &&...args) |
template<class... Args> | |
iterator | try_emplace (const_iterator hint, BloombergLP::bslmf::MovableRef< KEY > key, Args &&...args) |
add_lvalue_reference< const VALUE >::type | at (const key_type &key) const |
const_iterator | begin () const BSLS_KEYWORD_NOEXCEPT |
const_iterator | cbegin () const BSLS_KEYWORD_NOEXCEPT |
const_iterator | end () const BSLS_KEYWORD_NOEXCEPT |
const_iterator | cend () const BSLS_KEYWORD_NOEXCEPT |
const_local_iterator | begin (size_type index) const |
const_local_iterator | cbegin (size_type index) const |
const_local_iterator | end (size_type index) const |
const_local_iterator | cend (size_type index) const |
size_type | bucket (const key_type &key) const |
size_type | bucket_count () const BSLS_KEYWORD_NOEXCEPT |
size_type | max_bucket_count () const BSLS_KEYWORD_NOEXCEPT |
size_type | bucket_size (size_type index) const |
template<class LOOKUP_KEY > | |
enable_if < BloombergLP::bslmf::IsTransparentPredicate < HASH, LOOKUP_KEY >::value &&BloombergLP::bslmf::IsTransparentPredicate < EQUAL, LOOKUP_KEY >::value, size_type >::type | count (const LOOKUP_KEY &key) const |
size_type | count (const key_type &key) const |
bool | empty () const BSLS_KEYWORD_NOEXCEPT |
template<class LOOKUP_KEY > | |
enable_if < BloombergLP::bslmf::IsTransparentPredicate < HASH, LOOKUP_KEY >::value &&BloombergLP::bslmf::IsTransparentPredicate < EQUAL, LOOKUP_KEY >::value, pair< const_iterator, const_iterator > >::type | equal_range (const LOOKUP_KEY &key) const |
pair< const_iterator, const_iterator > | equal_range (const key_type &key) const |
template<class LOOKUP_KEY > | |
enable_if < BloombergLP::bslmf::IsTransparentPredicate < HASH, LOOKUP_KEY >::value &&BloombergLP::bslmf::IsTransparentPredicate < EQUAL, LOOKUP_KEY >::value, const_iterator >::type | find (const LOOKUP_KEY &key) const |
const_iterator | find (const key_type &key) const |
allocator_type | get_allocator () const BSLS_KEYWORD_NOEXCEPT |
HASH | hash_function () const |
EQUAL | key_eq () const |
float | load_factor () const BSLS_KEYWORD_NOEXCEPT |
float | max_load_factor () const BSLS_KEYWORD_NOEXCEPT |
size_type | size () const BSLS_KEYWORD_NOEXCEPT |
size_type | max_size () const BSLS_KEYWORD_NOEXCEPT |
Public Attributes | |
void swap(unordered_map &other) BSLS_KEYWORD_NOEXCEPT_SPECIFICATION(AllocatorTraits pair< iterator, bool > | try_emplace (const KEY &key, Args &&...args) |
Friends | |
template<class KEY2 , class VALUE2 , class HASH2 , class EQUAL2 , class ALLOCATOR2 > | |
bool | operator== (const unordered_map< KEY2, VALUE2, HASH2, EQUAL2, ALLOCATOR2 > &, const unordered_map< KEY2, VALUE2, HASH2, EQUAL2, ALLOCATOR2 > &) |
This class template implements a value-semantic container type holding an unordered set of KEY-VALUE
pairs having unique keys that provide a mapping from keys (of template parameter type KEY
) to their associated mapped values (of template parameter type VALUE
).
This class:
at
method) const
thread-safe For terminology see bsldoc_glossary
.
See Component bslstl_unorderedmap