Namespaces
Variants
Actions

std::permutable

From cppreference.com
< cpp‎ | iterator
 
C++
 
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
permutable
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
Defined in header <iterator>
template< class I >

concept permutable =
    std::forward_iterator<I> &&
    std::indirectly_movable_storable<I, I> &&

    std::indirectly_swappable<I, I>;
(since C++20)

The concept permutable refines std::forward_iterator by adding requirements for reordering through moves and swaps.

[edit] Semantic requirements

I models permutable only if all concepts it subsumes are modeled.

[edit] See also

(C++20)
specifies the common requirements of algorithms that permute sequences into ordered sequences
(concept) [edit]
removes elements satisfying specific criteria
(algorithm function object)[edit]
removes consecutive duplicate elements in a range
(algorithm function object)[edit]
reverses the order of elements in a range
(algorithm function object)[edit]
rotates the order of elements in a range
(algorithm function object)[edit]
randomly re-orders elements in a range
(algorithm function object)[edit]
divides a range of elements into two groups
(algorithm function object)[edit]
divides elements into two groups while preserving their relative order
(algorithm function object)[edit]

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant