Emplace with transparent lookup key at hint.

Synopsis

Declared in <bslstl_unorderedmap.h>

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;

Description

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.

Note: implemented inline due to Sun CC compilation error.

Return Value

iterator to the existing or newly inserted element

Parameters

Name

Description

hint

starting iterator for the lookup

key

lookup key to emplace

args

constructor arguments for the mapped value

Created with MrDocs