This struct template implements the enable_if meta-function defined in the C++11 standard [meta.trans.ptr]. This struct template provides a typedef type that is an alias to the (template parameter) t_TYPE if the (template parameter) t_COND is true; otherwise, type is not provided. If t_TYPE is not specified, it is set to void. Note that this generic default template provides type for when t_COND is true; a template specialization is provided (below) that omits type for when t_COND is false.
Declared in <bslmf_enableif.h>
template<
bool t_COND,
class t_TYPE = void>
struct enable_if;
| Name | Description |
|---|---|
type | This typedef is an alias to the (template parameter) t_TYPE. |
| Name | Description |
|---|---|
enable_if<true> | This struct template implements the enable_if meta-function defined in the C++11 standard [meta.trans.ptr]. This struct template provides a typedef type that is an alias to the (template parameter) t_TYPE if the (template parameter) t_COND is true; otherwise, type is not provided. If t_TYPE is not specified, it is set to void. Note that this generic default template provides type for when t_COND is true; a template specialization is provided (below) that omits type for when t_COND is false. |
enable_if<false, t_TYPE> | This partial specialization of enable_if, for when the (template parameter) t_COND is false, guarantees that no typedef type is supplied. Note that this class definition is intentionally empty. |