[#bsl-unordered_multiset-06c-operator_assign-0f] = xref:bsl.adoc[bsl]::xref:bsl/unordered_multiset-06c.adoc[unordered_multiset]::operator= :relfileprefix: ../../ :mrdocs: Assign to this object the value, hash function, and equality comparator of the specified `rhs` object, propagate to this object the allocator of `rhs` if the `ALLOCATOR` type has trait `propagate_on_container_move_assignment`, and return a reference providing modifiable access to this object. The contents of `rhs` are moved (in constant time) to this unordered multiset if `get_allocator() == rhs.get_allocator()` (after accounting for the aforementioned trait); otherwise, all elements in this unordered multiset are either destroyed or move‐assigned to and each additional element in `rhs` is move‐inserted into this unordered multiset. `rhs` is left in a valid but unspecified state, and if an exception is thrown, `*this` is left in a valid but unspecified state. This method requires that the (template parameter) type `KEY` be both `move‐assignable` and `move‐insertable` into this unordered multiset (see {Requirements on `KEY`}). == Synopsis Declared in `<bslstl_unorderedmultiset.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- xref:bsl/unordered_multiset-06c.adoc[unordered_multiset<KEY, HASH, EQUAL, ALLOCATOR>]& operator=(xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef<unordered_multiset>] rhs) noexcept(/* see-below */); ---- == Exception specification This function is potentially-throwing unless `AllocatorTraits::is_always_equal::value && std::is_nothrow_move_assignable<HASH>::value && std::is_nothrow_move_assignable<EQUAL>::value`. [.small]#Created with https://www.mrdocs.com[MrDocs]#