BloombergLP::bdlc::FlatHashMap::try_emplace

Try to emplace an element with key using a placement hint.

Synopsis

Declared in <bdlc_flathashmap.h>

template<class... ARGS>
FlatHashMap<KEY, VALUE, HASH, EQUAL>::iterator
try_emplace(
    const_iterator hint,
    BloombergLP::bslmf::MovableRef<KEY> key,
    ARGS&&... args);

Description

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

iterator to the existing or newly inserted element

Parameters

NameDescription
hintiterator hint (ignored)
keykey of the element to emplace (may be moved from)
argsarguments forwarded to construct the mapped value