std::indirectly_comparable(3cxx)

πŸ“¦
version 16-20260322 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

✨ NAME ✨

std::indirectly_comparable β€” okay bestie, it's a concept, specifically [alg.req.ind.cmp], and the concept's whole name is indirectly_comparable πŸ’–

This is from the libstdc++ manual, section 3cxx, just so you know where you are 🫢


🌸 SYNOPSIS 🌸

You gotta pull in the header first, no cap:

#include <iterator>

πŸ¦‹ Concept definition πŸ¦‹

Here's the whole vibe, character for character, don't let me catch you editing it:

template<typename _I1, typename _I2, typename _Rel, typename _P1 identity, typename _P2 identity>
concept std::indirectly_comparable =  indirect_binary_predicate<_Rel, projected<_I1, _P1>,
                                  projected<_I2, _P2>>

Two iterators, a relation, and two projections walk into a bar… and the concept says whether _Rel is an indirect_binary_predicate over the projections. That's the whole thing. She's simple, she's elegant, she ate πŸ’…


πŸ‘‘ Detailed Description πŸ‘‘

[alg.req.ind.cmp], concept indirectly_comparable.

Yeah. That's it. That's the description. Iconic of her honestly 🌈


πŸ’œ Author πŸ’œ

Not a person, bestie β€” this was generated automatically by Doxygen for libstdc++ straight from the source code. No human author, just machinery doing its little thing πŸ€–βœ¨


Heads up: every flag, name and code snippet above is copied exactly as it appears in the original page, so don't go "fixing" the template params β€” typename _P1 identity is literally what it says, fr fr 😭

libstdc++ Β· std::indirectly_comparable(3cxx) β€” that's the source and the version, mwah πŸ’‹ thanks for reading, ily, go write some iterators πŸŽ€πŸ¦‹πŸ’–

πŸ“¦ where this page comes from