std:: permutable
| 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) |