bsl::unordered_multimap::operator=

Assign to this object the value, hash function, and key-equivalence 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 multimap if get_allocator() == rhs.get_allocator() (after accounting for the aforementioned trait); otherwise, all elements in this unordered multimap are either destroyed or move-assigned to, and each additional element in rhs is move-inserted into this unordered multimap. 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) types KEY and VALUE both be move-assignable and move-insertable into this unordered multimap (see {Requirements on KEY and VALUE}).

Synopsis

Declared in <bslstl_unorderedmultimap.h>

unordered_multimap<KEY, VALUE, HASH, EQUAL, ALLOCATOR>&
operator=(BloombergLP::bslmf::MovableRef<unordered_multimap> 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.