__GNU_CXX::BINARY_COMPOSE(3cxx)

Okay bestie, welcome to __gnu_cxx::binary_compose< _Operation1, _Operation2, _Operation3 > β€” it’s from the (3cxx) manual, and the name is a whole mouthful. No cap, we’re getting through it together. πŸ’–

✨ NAME ✨

__gnu_cxx::binary_compose< _Operation1, _Operation2, _Operation3 > β€” literally An SGI extension . (yes, that space before the period is canon, bestie) πŸ¦‹

🌸 SYNOPSIS 🌸

#include <functional>

It inherits std::unary_function< _Operation2::argument_type, _Operation1::result_type >. That’s the family tree, periodt. πŸ’…

πŸŽ€ Public Types πŸŽ€

  • typedef _Operation2::argument_type argument_type β€” argument_type is the type of the argument. Slay, very demure, very argument-coded.
  • typedef _Operation1::result_type result_type β€” result_type is the return type. We love a clear return vibe.

πŸ¦‹ Public Member Functions πŸ¦‹

  • binary_compose (const _Operation1 &__x, const _Operation2 &__y, const _Operation3 &__z) β€” constructor signature, exactly as written. Three operations walk into a constructor… 😭
  • _Operation1::result_type operator() (const typename _Operation2::argument_type &__x) const β€” the call operator signature. Main character energy fr fr.

πŸ’œ Protected Attributes πŸ’œ

  • _Operation1 _M_fn1
  • _Operation2 _M_fn2
  • _Operation3 _M_fn3

Protected, so bestie, don’t go poking at them unless the class says you can. πŸ™ˆ

πŸ”₯ Detailed Description πŸ”₯

template<class _Operation1, class _Operation2, class _Operation3>
    class __gnu_cxx::binary_compose< _Operation1, _Operation2, _Operation3 >

The original then gives you "An SGI extension . β€” yes, with that stray quote and the space before the period. Not me side-eyeing the formatting, but we preserve the tea exactly. πŸ’€

🌈 Member Typedef Documentation 🌈

First up, argument_type:

typedef _Operation2::argument_type  std::unary_function<
    _Operation2::argument_type , _Operation1::result_type  >::argument_type
    [inherited]

And its description is: argument_type is the type of the argument. Inherited but still iconic. ✨

Next, result_type:

typedef _Operation1::result_type  std::unary_function<
    _Operation2::argument_type , _Operation1::result_type  >::result_type
    [inherited]

And its description is: result_type is the return type. Return type said what it said. 🫢

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for libstdc++ from the source code.

Doxygen really said β€œI’ll do it myself.” πŸ’…


πŸ’– cute sign-off: source/version is libstdc++, manual (3cxx), and there’s no date shown in the original footer. The footer is a truncated-looking mess, so we’re mentioning the info instead of copying the whole weird line. Bye bestie, go compose something binary-adjacent and fabulous! πŸŽ€πŸ¦‹πŸŒΈ