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

#include <bslmf_isempty.h>

Inheritance diagram for bsl::is_empty< 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 bsl::is_empty< t_TYPE >

This struct is a meta-function to determine whether the (template parameter) t_TYPE is an empty class type. This struct derives from bsl::true_type if the t_TYPE is empty, and from bsl::false_type otherwise. This meta-function has the same syntax as the is_empty meta-function defined in the C++11 standard [meta.unary.prop]; on C++03 platforms, however, this meta-function defaults to true_type if t_TYPE is a class or struct with no non-static data members other than bit-fields of length 0, no virtual member functions, no virtual base classes, and no base class B for which is_empty<B>::value is false; otherwise is_empty defaults to false_type. Note that this meta-function will fail to compile for a union that is the same size as an empty class in C++03.

This struct is a meta-function to determine whether the (template parameter) t_TYPE is an empty class type. is_empty inherits from true_type if t_TYPE is a class or struct with no non-static data members other than bit-fields of length 0, no virtual member functions, no virtual base classes, and no base class B for which is_empty<B>::value is false; otherwise is_empty inherits from false_type. Note that this meta-function will fail to compile for a union that is the same size as an empty class in C++03.


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