[#BloombergLP-bdlat_EnumFunctions-HasFallbackEnumerator-00] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlat_EnumFunctions.adoc[bdlat_EnumFunctions]::HasFallbackEnumerator :relfileprefix: ../../ :mrdocs: Meta‐function that detects whether `TYPE` has a fallback enumerator. == Synopsis Declared in `<bdlat_enumfunctions.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> struct HasFallbackEnumerator : xref:bsl/integral_constant-02.adoc[bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitHasFallbackEnumerator>::value>] ---- == Description 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. == Base Classes [cols="1,4"] |=== | Name| Description | `xref:bsl/integral_constant-02.adoc[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`. |=== == Type Aliases [cols="1,4"] |=== | Name| Description | xref:bsl/integral_constant-02/type.adoc[`type`] | Alias for this `integral_constant` specialization. | xref:bsl/integral_constant-02/value_type.adoc[`value_type`] | Alias for the (template parameter) `t_TYPE`. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:bsl/integral_constant-02/operator_call.adoc[`operator()`] | Return a copy of the template argument `t_VALUE`. | xref:bsl/integral_constant-02/2conversion.adoc[`operator t_TYPE`] | Return a copy of the template argument `t_VALUE`. |=== == Static Data Members [cols="1,4"] |=== | Name| Description | xref:bsl/integral_constant-02/value.adoc[`value`] | The compile‐time constant value of this metafunction. |=== == Specializations [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlat_EnumFunctions/HasFallbackEnumerator-01.adoc[`HasFallbackEnumerator<bdlar::EnumConstRef>`] | Trait indicating that `bdlar::EnumConstRef` supports a fallback enumerator. | xref:BloombergLP/bdlat_EnumFunctions/HasFallbackEnumerator-08.adoc[`HasFallbackEnumerator<bdlar::EnumRef>`] | Trait indicating that `bdlar::EnumRef` supports a fallback enumerator. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#