BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bslmf::IsEnum< t_TYPE > Struct Template Reference

#include <bslmf_isenum.h>

Inheritance diagram for bslmf::IsEnum< t_TYPE >:
bsl::integral_constant< t_TYPE, t_VAL >

Additional Inherited Members

- Public Types inherited from bsl::integral_constant< t_TYPE, t_VAL >
typedef t_TYPE value_type
 
typedef integral_constant type
 
- Public Member Functions inherited from bsl::integral_constant< t_TYPE, t_VAL >
 integral_constant ()=default
 
 integral_constant (const integral_constant &)=default
 
integral_constant operator= (const integral_constant &)=default
 
 ~integral_constant ()=default
 
BSLS_KEYWORD_CONSTEXPR operator value_type () const BSLS_KEYWORD_NOEXCEPT
 Return t_VAL.
 
- Static Public Attributes inherited from bsl::integral_constant< t_TYPE, t_VAL >
static const t_TYPE value = t_VAL
 

Detailed Description

template<class t_TYPE>
struct bslmf::IsEnum< t_TYPE >

This struct provides a meta-function that computes, at compile time, whether the (template parameter) t_TYPE is an enumerated type. It derives from bsl::true_type if t_TYPE is an enumerated type, and from bsl::false_type otherwise.

Enumerated types are the only user-defined types that have the characteristics of a native arithmetic type (i.e., they can be converted to an integral type without invoking user-defined conversions). This class takes advantage of this property to distinguish enum types from class types that are convertible to an integral or enumerated type.


The documentation for this struct was generated from the following file: