Function Subspace :: sus :: mem :: swap_nonoverlapping

template <class T>
auto swap_nonoverlapping(UnsafeFnMarker, T& lhs, T& rhs) -> void
requires
sus::mem::Move<T>
!std::is_const_v<T>

Swaps the objects lhs and rhs.

Safety

The inputs must not both refer to the same object, and the objects must not be overlapping, or Undefined Behaviour may result.