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 conceptpermutable
refinesstd::forward_iterator by adding requirements for reordering through moves and swaps.
I
modelspermutable
only if all concepts it subsumes are modeled.
(C++20) | specifies the common requirements of algorithms that permute sequences into ordered sequences (concept)[edit] |
(C++20)(C++20) | removes elements satisfying specific criteria (algorithm function object)[edit] |
(C++20) | removes consecutive duplicate elements in a range (algorithm function object)[edit] |
(C++20) | reverses the order of elements in a range (algorithm function object)[edit] |
(C++20) | rotates the order of elements in a range (algorithm function object)[edit] |
(C++20) | randomly re-orders elements in a range (algorithm function object)[edit] |
(C++20) | divides a range of elements into two groups (algorithm function object)[edit] |
(C++20) | divides elements into two groups while preserving their relative order (algorithm function object)[edit] |