Operators available to elements of enumerations if ArithmeticalTraits is specialized.
Function Index: | |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator% (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator%= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator* (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator*= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator+ (TEnum arg) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator+ (TEnum lhs, TEnum rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator+ (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator++ (TEnum &arg) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator++ (TEnum &arg, typename std::underlying_type< TEnum >::type) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator+= (TEnum &lhs, TEnum rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator+= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator- (TEnum arg) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator- (TEnum lhs, TEnum rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator- (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator-- (TEnum &arg) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator-- (TEnum &arg, typename std::underlying_type< TEnum >::type) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator-= (TEnum &lhs, TEnum rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator-= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator/ (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator/= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr bool | operator< (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator<< (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator<<= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr bool | operator<= (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr bool | operator> (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr bool | operator>= (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator>> (TEnum lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
| template<typename TEnum> requires alib::enumops::IsArithmetical<TEnum> | |
| ALIB_EXPORT constexpr TEnum | operator>>= (TEnum &lhs, typename std::underlying_type< TEnum >::type rhs) noexcept |
|
constexprnoexcept |
Modulo operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 478 of file arithmetical.inl.
|
constexprnoexcept |
Modulo assignment operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 496 of file arithmetical.inl.
|
constexprnoexcept |
Multiplication operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 407 of file arithmetical.inl.
|
constexprnoexcept |
Multiplication assignment operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 425 of file arithmetical.inl.
|
constexprnoexcept |
Unary plus operator for enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| arg | Operand. |
Definition at line 376 of file arithmetical.inl.
|
constexprnoexcept |
Add-operator between two enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 170 of file arithmetical.inl.
|
constexprnoexcept |
Add-operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 187 of file arithmetical.inl.
|
constexprnoexcept |
Prefix increment operator.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | arg | Reference to the enum value to be incremented. |
Definition at line 238 of file arithmetical.inl.
|
constexprnoexcept |
Postfix increment operator.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | arg | Reference to the enum value to be incremented. |
Definition at line 254 of file arithmetical.inl.
|
constexprnoexcept |
Add-assignment-operator between two enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 205 of file arithmetical.inl.
|
constexprnoexcept |
Add-assignment-operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| TEnum | Enumeration type. |
| rhs | Second operand. |
Definition at line 222 of file arithmetical.inl.
|
constexprnoexcept |
Unary minus operator for enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| arg | Operand. |
Definition at line 389 of file arithmetical.inl.
|
constexprnoexcept |
Subtract operator between two enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 273 of file arithmetical.inl.
|
constexprnoexcept |
Subtract operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 291 of file arithmetical.inl.
|
constexprnoexcept |
Prefix decrement operator.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | arg | Reference to the enum value to be decremented. |
Definition at line 341 of file arithmetical.inl.
|
constexprnoexcept |
Postfix decrement operator.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | arg | Reference to the enum value to be decremented. |
Definition at line 358 of file arithmetical.inl.
|
constexprnoexcept |
Subtract assignment operator between two enum elements.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 308 of file arithmetical.inl.
|
constexprnoexcept |
Subtract assignment operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 325 of file arithmetical.inl.
|
constexprnoexcept |
Division operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 442 of file arithmetical.inl.
|
constexprnoexcept |
Division assignment operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 460 of file arithmetical.inl.
|
constexprnoexcept |
Comparison operator less between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 98 of file arithmetical.inl.
|
constexprnoexcept |
Shift-left operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 514 of file arithmetical.inl.
|
constexprnoexcept |
Shift-left assignment operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 531 of file arithmetical.inl.
|
constexprnoexcept |
Comparison operator less or equal between an enum element and an integral value of the underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 116 of file arithmetical.inl.
|
constexprnoexcept |
Comparison operator greater between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 134 of file arithmetical.inl.
|
constexprnoexcept |
Comparison operator greater or equal between an enum element and an integral value of the underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 152 of file arithmetical.inl.
|
constexprnoexcept |
Shift-right operator between an enum element and an integral value of underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| lhs | First operand. |
| rhs | Second operand. |
Definition at line 549 of file arithmetical.inl.
|
constexprnoexcept |
Shift-right assignment operator between an enum element and an integral value of the underlying type.
Selected by the compiler only if ArithmeticalTraits is specialized for template enum type TEnum to inherit std::true_type.
| TEnum | Enumeration type. |
| [in,out] | lhs | Reference to the first operand. Receives the result. |
| rhs | Second operand. |
Definition at line 567 of file arithmetical.inl.