Instantiate each specified (template parameter) t_TRAIT1 to t_TRAIT9 metafunction using the specified (template parameter) t_TYPE. Inherit from SelectTraitCase<TRAITx>, where x is 1 if t_TRAIT1<t_TYPE>::value is true, 2 if t_TRAIT2<t_TYPE>::value is true, etc.. If none of the traits evaluates to true, then inherit from SelectTraitCase<>, which means that none of the traits match.

Synopsis

Declared in <bslmf_selecttrait.h>

template<
    class t_TYPE,
    template<class> typename t_TRAIT1,
    template<class> typename t_TRAIT2 = SelectTrait_False,
    template<class> typename t_TRAIT3 = SelectTrait_False,
    template<class> typename t_TRAIT4 = SelectTrait_False,
    template<class> typename t_TRAIT5 = SelectTrait_False,
    template<class> typename t_TRAIT6 = SelectTrait_False,
    template<class> typename t_TRAIT7 = SelectTrait_False,
    template<class> typename t_TRAIT8 = SelectTrait_False,
    template<class> typename t_TRAIT9 = SelectTrait_False>
struct SelectTrait
    : /* implementation-defined */::Type

Base Classes

Name

Description

/* implementation-defined */::Type

Type Aliases

Name

Description

OrdinalType

OrdinalType is an integral constant holding the selected trait ordinal.

Enums

Name

Description

Unnamed enum

Index of the selected trait ordinal.

Created with MrDocs