[#bsl-unordered_set-02a-insert-0c] = xref:bsl.adoc[bsl]::xref:bsl/unordered_set-02a.adoc[unordered_set<ManagedAttribute, AttributeHash>]::insert :relfileprefix: ../../ :mrdocs: Insert the specified `value` into this set if a key equivalent to `value` does not already exist in this set; otherwise, if a key equivalent to `value` already exists in this set, this method has no effect. `value` is left in a valid but unspecified state. Return an iterator referring to the (possibly newly inserted) `value_type` object in this set that is equivalent to `value`. The average and worst case complexity of this operation is not affected by the specified `hint`. This method requires that the (template parameter) type `KEY` be `move‐insertable` (see {Requirements on `KEY`}) into this set. The behavior is undefined unless `hint` is an iterator in the range `[begin() .. end()]` (both endpoints included). Note that `hint` is ignored (other than possibly asserting its validity in some build modes). == Synopsis Declared in `<bslstl_unorderedset.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class LOOKUP_KEY> xref:bsl/unordered_set-02a/iterator.adoc[iterator] insert( xref:bsl/unordered_set-02a/const_iterator.adoc[const_iterator], LOOKUP_KEY&& value) requires BloombergLP::bslmf::IsTransparentPredicate<HASH, LOOKUP_KEY>::value && BloombergLP::bslmf::IsTransparentPredicate<EQUAL,LOOKUP_KEY>::value && !bsl::is_convertible<LOOKUP_KEY&&, iterator>::value && !bsl::is_convertible<LOOKUP_KEY&&, const_iterator>::value; ---- == Description Note: implemented inline due to Sun CC compilation error. [.small]#Created with https://www.mrdocs.com[MrDocs]#