hyperion::mpl::type_traits#
- group Type Traits
Hyperion provides an assortment of metaprogramming type traits used to detect various characteristics of given type(s). Some of these are purely novel, such as detection of an operator overload, while others are supplemental to those provided by the standard, doing something similar to existing traits, but filling in gaps in the API surface that were overlooked or missing for other reasons.
- Comparison Operator Detection
three_way_compare_result_t
is_equality_comparable_v
is_inequality_comparable_v
is_less_than_comparable_v
is_less_than_or_equal_comparable_v
is_greater_than_comparable_v
is_greater_than_or_equal_comparable_v
is_three_way_comparable_v
hyperion::mpl::type_traits::is_equality_comparable
hyperion::mpl::type_traits::is_inequality_comparable
hyperion::mpl::type_traits::is_less_than_comparable
hyperion::mpl::type_traits::is_less_than_or_equal_comparable
hyperion::mpl::type_traits::is_greater_than_comparable
hyperion::mpl::type_traits::is_greater_than_or_equal_comparable
hyperion::mpl::type_traits::is_three_way_comparable
- General Operator Detection
unary_plus_result_t
unary_minus_result_t
binary_not_result_t
boolean_not_result_t
address_result_t
arrow_result_t
dereference_result_t
add_result_t
subtract_result_t
multiply_result_t
divide_result_t
binary_and_result_t
binary_or_result_t
boolean_and_result_t
boolean_or_result_t
is_unary_plusable_v
is_unary_minusable_v
is_binary_notable_v
is_boolean_notable_v
is_addressable_v
is_arrowable_v
is_dereferencible_v
is_addable_v
is_subtractable_v
is_multipliable_v
is_dividible_v
is_binary_andable_v
is_binary_orable_v
is_boolean_andable_v
is_boolean_orable_v
hyperion::mpl::type_traits::is_unary_plusable
hyperion::mpl::type_traits::is_unary_minusable
hyperion::mpl::type_traits::is_binary_notable
hyperion::mpl::type_traits::is_boolean_notable
hyperion::mpl::type_traits::is_addressable
hyperion::mpl::type_traits::is_arrowable
hyperion::mpl::type_traits::is_dereferencible
hyperion::mpl::type_traits::is_addable
hyperion::mpl::type_traits::is_subtractable
hyperion::mpl::type_traits::is_multipliable
hyperion::mpl::type_traits::is_dividible
hyperion::mpl::type_traits::is_binary_andable
hyperion::mpl::type_traits::is_binary_orable
hyperion::mpl::type_traits::is_boolean_andable
hyperion::mpl::type_traits::is_boolean_orable