9 Iterators library [iterators]

9.5 Common algorithm requirements [commonalgoreq]

9.5.6 Concept Permutable [commonalgoreq.permutable]

The Permutable concept specifies the common requirements of algorithms that reorder elements in place by moving or swapping them.

  template <class I>
  concept bool Permutable =
    ForwardIterator<I> &&
    IndirectlyMovableStorable<I, I> &&
    IndirectlySwappable<I, I>;