std::permutable
From cppreference.com
C++
Iterator library
Iterator concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Iterator primitives | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Algorithm concepts and utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Indirect callable concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Common algorithm requirements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Iterator adaptors | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Defined in header <iterator>
|
||
template
<
class I >
concept permutable =
|
(since C++20) | |
The concept permutable
refines std::forward_iterator by adding requirements for reordering through moves and swaps.
Semantic requirements
I
models permutable
only if all concepts it subsumes are modeled.
See also
(C++20)
|
specifies the common requirements of algorithms that permute sequences into ordered sequences (concept) |
(C++20)(C++20)
|
removes elements satisfying specific criteria (algorithm function object) |
(C++20)
|
removes consecutive duplicate elements in a range (algorithm function object) |
(C++20)
|
reverses the order of elements in a range (algorithm function object) |
(C++20)
|
rotates the order of elements in a range (algorithm function object) |
(C++20)
|
randomly re-orders elements in a range (algorithm function object) |
(C++20)
|
divides a range of elements into two groups (algorithm function object) |
(C++20)
|
divides elements into two groups while preserving their relative order (algorithm function object) |