Try to emplace an element with the specified key.

Synopsis

Declared in <bdlc_flathashmap.h>

template<
    class LOOKUP_KEY,
    class... ARGS>
bsl::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;

Description

If a key equivalent to the specified key already exists in this 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.

Return Value

pair of iterator to the element and whether insertion occurred

Parameters

Name

Description

key

transparent key of the element to emplace

args

arguments forwarded to construct the mapped value

Created with MrDocs