std::permutable(3)

πŸ“¦
version 2024.07.05 Β· 3 versions
, in nixpkgs unstable, opensuse-leap 16.0

πŸ’– std::permutable β€” C++ Standard Libary, section (3) πŸ’–

okay bestie, buckle up: this is the manual page for std::permutable, and it is literally the concept girlie of the C++ standard library. πŸŽ€

✨ NAME ✨

std::permutable β€” std::permutable (yes, the name is the name, we’re serving minimalism πŸ’…)

🌸 Synopsis 🌸

Defined in header <iterator> ✨

template< class I >

concept permutable =
    std::forward_iterator<I> &&                (since C++20)
    std::indirectly_movable_storable<I, I> &&

    std::indirectly_swappable<I, I>;

The concept permutable refines std::forward_iterator by adding requirements for reordering through moves and swaps. it’s giving iterator glow-up, not replacement πŸ¦‹

🧠 Semantic requirements 🧠

I models permutable only if all concepts it subsumes are modeled. no skipping the prerequisites, bestie β€” that’s the vibe check πŸ’€

πŸ’… See also πŸ’…

  • sortable (C++20) β€” specifies the common requirements of algorithms that permute sequences into ordered sequences (concept) πŸ‘‘
  • ranges::remove (C++20) β€” removes elements satisfying specific criteria (niebloid) 🌸
  • ranges::remove_if (C++20) β€” removes elements satisfying specific criteria (niebloid) 🌈
  • ranges::unique (C++20) β€” removes consecutive duplicate elements in a range (niebloid) πŸ¦‹
  • ranges::reverse (C++20) β€” reverses the order of elements in a range (niebloid) πŸ”₯
  • ranges::rotate (C++20) β€” rotates the order of elements in a range (niebloid) ⭐
  • ranges::shuffle (C++20) β€” randomly re-orders elements in a range (niebloid) πŸŽ€
  • ranges::partition (C++20) β€” divides a range of elements into two groups (niebloid) πŸ’œ
  • ranges::stable_partition (C++20) β€” divides elements into two groups while preserving their relative order (niebloid) 🧚

mwah πŸ’‹ this page came from source cppreference.com, version/date 2024.06.10, and it’s the std::permutable(3) manual page β€” periodt. 🫢

πŸ“¦ where this page comes from