Insert or assign a mapped value for a transparent key.
Declared in <bslstl_hashtable.h>
template<
class LOOKUP_KEY,
class BDE_OTHER_TYPE>
bslalg::BidirectionalLink*
insertOrAssignTransparent(
bool* isInsertedFlag,
bslalg::BidirectionalLink* hint,
LOOKUP_KEY&& key,
BDE_OTHER_TYPE&& obj)
requires BloombergLP::bslmf::IsTransparentPredicate<HASHER, LOOKUP_KEY>::value
&& BloombergLP::bslmf::IsTransparentPredicate<COMPARATOR,LOOKUP_KEY>::value;
If a key equivalent to the specified key already exists in this hash-table, assign the specified obj to the value associated with that key, load false into the specified isInsertedFlag and return a pointer to the existing entry. Otherwise, insert into this hash-table a newly-created value_type object, constructed from key and obj, load true into isInsertedFlag, and return a pointer to the newly-created entry. Use the optionally specified hint as a starting place for the search for the existing key.
pointer to the existing or newly created entry
| Name | Description |
|---|---|
| isInsertedFlag | set to true if a new entry was inserted |
| hint | optional starting node for the key search |
| key | transparent key to insert or assign |
| obj | mapped value to insert or assign |