Meta‐function for detecting nested traits.

Synopsis

Declared in <bslmf_detectnestedtrait.h>

template<
    class t_TYPE,
    template<class> typename t_TRAIT>
struct DetectNestedTrait
    : /* implementation-defined */::type

Description

This struct template metafunction detects whether the specified t_TRAIT parameter is associated with the specified t_TYPE parameter using the nested type trait mechanism. This trait derives from bsl::true_type if and only if t_TYPE is a class type that associated with the specified trait using the BSLMF_NESTED_TRAIT_DECLARATION macro, and from bsl::false_type otherwise. Users should not specialize this trait directly for their types, but should always use the macro to make a nested trait association.

Base Classes

Name

Description

/* implementation-defined */::type

Specializations

Name

Description

DetectNestedTrait<t_TYPE volatile, t_TRAIT>

Partial specialization for volatile‐qualified types.

DetectNestedTrait<t_TYPE const, t_TRAIT>

Partial specialization for const‐qualified types.

DetectNestedTrait<t_TYPE const volatile, t_TRAIT>

Partial specialization for const‐volatile‐qualified types.

Derived Classes

Name

Description

HasStlIterators

This class detects if the specified class TYPE has STL‐like iterators.

Created with MrDocs