BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND > Class Template Reference

#include <bslmf_nestedtraitdeclaration.h>

Public Types

typedef NestedTraitDeclaration Type
 

Public Member Functions

 NestedTraitDeclaration ()
 
 NestedTraitDeclaration (const NestedTraitDeclaration &)
 
NestedTraitDeclarationoperator= (const NestedTraitDeclaration &)
 
 ~NestedTraitDeclaration ()
 

Detailed Description

template<class t_TYPE, template< class t_T > class t_TRAIT, bool t_COND = true>
class bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >

Class t_TYPE will be convertible to NestedTraitDeclaration<t_TYPE,t_TRAIT,true> if t_TRAIT is associated with t_TYPE using the BSLMF_NESTED_TRAIT_DECLARATION macro. Nested trait detection depends on t_COND being true. If t_COND is false, the nested trait detection will not see the conversion it is looking for and will not associate t_TRAIT with t_TYPE. This feature is used by BSLMF_NESTED_TRAIT_DECLARATION_IF to turn a trait on or off depending on a compile-time condition (usually another trait).

See bslmf_nestedtraitdeclaration

Member Typedef Documentation

◆ Type

template<class t_TYPE , template< class t_T > class t_TRAIT, bool t_COND = true>
typedef NestedTraitDeclaration bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >::Type

Constructor & Destructor Documentation

◆ NestedTraitDeclaration() [1/2]

template<class t_TYPE , template< class t_T > class t_TRAIT, bool t_COND = true>
bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >::NestedTraitDeclaration ( )

◆ NestedTraitDeclaration() [2/2]

template<class t_TYPE , template< class t_T > class t_TRAIT, bool t_COND = true>
bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >::NestedTraitDeclaration ( const NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND > &  )

◆ ~NestedTraitDeclaration()

template<class t_TYPE , template< class t_T > class t_TRAIT, bool t_COND = true>
bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >::~NestedTraitDeclaration ( )

Member Function Documentation

◆ operator=()

template<class t_TYPE , template< class t_T > class t_TRAIT, bool t_COND = true>
NestedTraitDeclaration & bslmf::NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND >::operator= ( const NestedTraitDeclaration< t_TYPE, t_TRAIT, t_COND > &  )

The documentation for this class was generated from the following file: