class is_integral_or_enum
Declaration
template <typename T>
class is_integral_or_enum { /* full declaration omitted */ };
Description
Metafunction that determines whether the given type is either an integral type or an enumeration type, including enum classes. Note that this accepts potentially more integral types than is_integral because it is based on being implicitly convertible to an integral type. Also note that enum classes aren't implicitly convertible to integral types, the value may therefore need to be explicitly converted before being used.
Declared at: llvm/include/llvm/Support/type_traits.h:30
Templates
- T
Member Variables
- public static const bool value = !std::is_class<typename remove_reference<type-parameter-0-0>::type>::value && !std::is_pointer<typename remove_reference<type-parameter-0-0>::type>::value && !std::is_floating_point<typename remove_reference<type-parameter-0-0>::type>::value && (std::is_enum<typename remove_reference<type-parameter-0-0>::type>::value || std::is_convertible<typename remove_reference<type-parameter-0-0>::type, unsigned long long>::value)