This struct should be specialized for third-party types that need to expose "choice" behavior. See the component-level documentation for further information.
Declared in <bdlat_choicefunctions.h>
template<class TYPE>
struct IsChoice
: bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicChoice>::value>
| Name | Description |
|---|---|
bsl::integral_constant<bool, bslalg::HasTrait<TYPE, bdlat_TypeTraitBasicChoice>::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 |
| Name | Description |
|---|---|
operator() | Return a copy of the template argument t_VALUE. |
operator value_type |
| Name |
|---|
value |
| Name |
|---|
IsChoice<bdlar::ChoiceConstRef> |
IsChoice<bdlar::ChoiceRef> |