Meta-function that detects whether TYPE has a fallback enumerator.
Declared in <bdlat_enumfunctions.h>
template<class TYPE>
struct HasFallbackEnumerator
: bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitHasFallbackEnumerator>::value>
This struct should be specialized for third-party types that need to declare the fact that they have a fallback enumerator value. Clients that specialize this struct must ensure that if HasFallbackEnumerator<TYPE>::value is true, then IsEnumeration<TYPE>::value is also true; otherwise, the behavior is undefined.
| Name | Description |
|---|---|
bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitHasFallbackEnumerator>::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 |
|---|---|
HasFallbackEnumerator<bdlar::EnumConstRef> | Trait indicating that bdlar::EnumConstRef supports a fallback enumerator. |
HasFallbackEnumerator<bdlar::EnumRef> | Trait indicating that bdlar::EnumRef supports a fallback enumerator. |