21 Metaprogramming library [meta]

21.4 Reflection [meta.reflection]

21.4.5 Operator representations [meta.reflection.operators]

enum class operators { see below; }; using enum operators;
The enumeration type operators specifies constants used to identify operators that can be overloaded, with the meanings listed in Table 63.
The values of the constants are distinct.
Table 63 — Enum class operators[tab:meta.reflection.operators]
Constant
Corresponding operator-function-id
Operator symbol name
op_new
operator new
new
op_delete
operator delete
delete
op_array_new
operator new[]
new[]
op_array_delete
operator delete[]
delete[]
op_co_await
operator co_await
co_await
op_parentheses
operator()
()
op_square_brackets
operator[]
[]
op_arrow
operator->
->
op_arrow_star
operator->*
->*
op_tilde
operator~
~
op_exclamation
operator!
!
op_plus
operator+
+
op_minus
operator-
-
op_star
operator*
*
op_slash
operator/
/
op_percent
operator%
%
op_caret
operator^
^
op_ampersand
operator&
&
op_equals
operator=
=
op_pipe
operator|
|
op_plus_equals
operator+=
+=
op_minus_equals
operator-=
-=
op_star_equals
operator*=
*=
op_slash_equals
operator/=
/=
op_percent_equals
operator%=
%=
op_caret_equals
operator^=
^=
op_ampersand_equals
operator&=
&=
op_pipe_equals
operator|=
|=
op_equals_equals
operator=
==
op_exclamation_equals
operator!=
!=
op_less
operator<
<
op_greater
operator>
>
op_less_equals
operator<=
<=
op_greater_equals
operator>=
>=
op_spaceship
operator<=>
<=>
op_ampersand_ampersand
operator&
&&
op_pipe_pipe
operator|
||
op_less_less
operator<
<<
op_greater_greater
operator>
>>
op_less_equals
operator<=
<<=
op_greater_equals
operator>=
>>=
op_plus_plus
operator+
++
op_minus_minus
operator-
--
op_comma
operator,
,
consteval operators operator_of(info r);
Returns: The value of the enumerator from operators whose corresponding operator-function-id is the unqualified name of the entity represented by r.
Throws: meta​::​exception unless r represents an operator function or operator function template.
consteval string_view symbol_of(operators op); consteval u8string_view u8symbol_of(operators op);
Returns: A string_view or u8string_view containing the characters of the operator symbol name corresponding to op, respectively encoded with the ordinary literal encoding or with UTF-8.
Throws: meta​::​exception unless the value of op corresponds to one of the enumerators in operators.

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