BDE 4.14.0 Production release
|
#include <bslalg_selecttrait.h>
Public Types | |
enum | { SELECTION } |
typedef bslmf::Switch< SELECTION, TypeTraitNil, TRAIT1, TRAIT2, TRAIT3, TRAIT4, TRAIT5 >::Type | Type |
Select one trait out of several that the parameterized type T
may possess. If T
has the parameterized trait TRAIT1
, then the nested Type
is TRAIT1
, else if T
has an optionally parameterized TRAIT2
, then Type
is TRAIT2
, etc. Also computes an integral selection constant and meta-value. If T
has none of the parameterized TRAIT*
, then the nested Type
is TypeTraitNil
.
typedef bslmf::Switch<SELECTION,TypeTraitNil,TRAIT1,TRAIT2,TRAIT3,TRAIT4,TRAIT5>::Type bslalg::SelectTrait< TYPE, TRAIT1, TRAIT2, TRAIT3, TRAIT4, TRAIT5 >::Type |
The actual trait that was selected, or TypeTraitNil
if no trait was selected.
anonymous enum |