...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
void
swap(
value
& other);
Exchanges the contents of this value with another value. Ownership of the
respective boost::container::pmr::memory_resource
objects is not transferred:
*other.storage() == *this->storage()
, ownership of the underlying memory
is swapped in constant time, with no possibility of exceptions. All
iterators and references remain valid.
*other.storage() != *this->storage()
, the contents are logically swapped
by making copies, which can throw. In this case all iterators and references
are invalidated.
Constant or linear in the sum of the sizes of the values.
Strong guarantee. Calls to memory_resource::allocate
may throw.
Name |
Description |
---|---|
|
The value to swap with. If |