Meta-function that detects whether TYPE exposes enumeration behavior.
Declared in <bdlat_enumfunctions.h>
template<class TYPE>
struct IsEnumeration
: bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicEnumeration>::value>
This struct should be specialized for third-party types that need to expose "enumeration" behavior. See the component-level documentation for further information.
| Name | Description |
|---|---|
bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicEnumeration>::value> | Metafunction representing a compile-time constant of the specified (template parameter) t_TYPE with the specified (template parameter) t_VALUE. |
| Name | Description |
|---|---|
type | Alias for this integral_constant specialization. |
value_type | Alias for the (template parameter) t_TYPE. |
| Name | Description |
|---|---|
operator() | Return a copy of the template argument t_VALUE. |
operator t_TYPE | Return a copy of the template argument t_VALUE. |
| Name | Description |
|---|---|
value | The compile-time constant value of this metafunction. |
| Name | Description |
|---|---|
IsEnumeration<bdlar::EnumConstRef> | Trait indicating that bdlar::EnumConstRef is a bdlat enumeration type. |
IsEnumeration<bdlar::EnumRef> | Trait indicating that bdlar::EnumRef is a bdlat enumeration type. |
| Name | Description |
|---|---|
IsEnum | Meta-function indicating whether the specified t_TYPE is an enumeration type. |