[#bsl-unordered_set-02a-operator_assign-09] = xref:bsl.adoc[bsl]::xref:bsl/unordered_set-02a.adoc[unordered_set<ManagedAttribute, AttributeHash>]::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 set if `get_allocator() == rhs.get_allocator()` (after accounting for the aforementioned trait); otherwise, all elements in this set are either destroyed or move‐assigned to and each additional element in `rhs` is move‐inserted into this set. `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 set (see {Requirements on `KEY`}). == Synopsis Declared in `<bslstl_unorderedset.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- xref:bsl/unordered_set-0d2d.adoc[unordered_set<ManagedAttribute, AttributeHash>]& operator=(xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef<unordered_set<ManagedAttribute, AttributeHash>>] 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]#