try_emplace overloads

Synopses

Declared in <bslstl_unorderedmap.h>

If a key equivalent to the specified key already exists in this unordered_map, return a pair containing an iterator referring to the existing item and false. Otherwise, insert into this map a newly‐created value_type object, constructed from std::forward<KEY>(key) and the specified args, and return a pair containing an iterator referring to the newly‐created entry, and true. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

If a key equivalent to the specified key already exists in this unordered_map, return a pair containing an iterator referring to the existing item, and false. Otherwise, insert into this map a newly‐created value_type object, constructed from key and the specified args, and return a pair containing an iterator referring to the newly‐created entry and true. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

template<class... Args>
pair<iterator, bool>
try_emplace(
    basic_string<char> const& key,
    Args&&... args);

If a key equivalent to the specified key already exists in this unordered_map, return a pair containing an iterator referring to the existing item and false. Otherwise, insert into this map a newly‐created value_type object, constructed from std::forward<LOOKUP_KEY>(key) and the specified args, and return a pair containing an iterator referring to the newly‐created entry, and true. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

template<
    class LOOKUP_KEY,
    class... Args>
pair<iterator, bool>
try_emplace(
    LOOKUP_KEY&& key,
    Args&&... args)
requires BloombergLP::bslmf::IsTransparentPredicate<HASH, LOOKUP_KEY>::value
        && BloombergLP::bslmf::IsTransparentPredicate<EQUAL,LOOKUP_KEY>::value
        && !bsl::is_convertible<LOOKUP_KEY&&, const_iterator>::value
        && !bsl::is_convertible<LOOKUP_KEY&&, iterator>::value;

If a key equivalent to the specified key already exists in this unordered_map, return an iterator referring to the existing item. Otherwise, insert into this map a newly‐created value_type object, constructed from std::forward<KEY>(key) and the specified args, and return an iterator referring to the newly‐created entry. Use the specified hint as a starting point for checking to see if the key already in the unordered_map. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

template<class... Args>
iterator
try_emplace(
    const_iterator hint,
    BloombergLP::bslmf::MovableRef<basic_string<char>> key,
    Args&&... args);

If a key equivalent to the specified key already exists in this unordered_map, return an iterator referring to the existing item. Otherwise, insert into this map a newly‐created value_type object, constructed from key and the specified args, and return an iterator referring to the newly‐created entry. Use the specified hint as a starting point for checking to see if the key already in the unordered_map. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

template<class... Args>
iterator
try_emplace(
    const_iterator hint,
    basic_string<char> const& key,
    Args&&... args);

If a key equivalent to the specified key already exists in this unordered_map, return an iterator referring to the existing item. Otherwise, insert into this map a newly‐created value_type object, constructed from std::forward<LOOKUP_KEY>(key) and the specified args, and return an iterator referring to the newly‐created entry. Use the specified hint as a starting point for checking to see if the key already in the unordered_map. This method requires that the (template parameter) types KEY and VALUE are emplace‐constructible from key and args respectively. For C++03, VALUE must also be copy‐constructible.

template<
    class LOOKUP_KEY,
    class... Args>
iterator
try_emplace(
    const_iterator hint,
    LOOKUP_KEY&& key,
    Args&&... args)
requires BloombergLP::bslmf::IsTransparentPredicate<HASH, LOOKUP_KEY>::value
        && BloombergLP::bslmf::IsTransparentPredicate<EQUAL,LOOKUP_KEY>::value;

Created with MrDocs