Quick Links: |
#include <bslmf_memberfunctionpointertraits.h>
Public Types | |
enum | { IS_CONST = (BSLMF_TAG_TO_UINT((test)((t_PROTOTYPE)0)) & 1) != 0, IS_VOLATILE = (BSLMF_TAG_TO_UINT((test)((t_PROTOTYPE)0)) & 2) != 0 } |
typedef If< IS_CONST, const t_TYPE, t_TYPE >::Type | CType |
typedef If< IS_VOLATILE, volatile CType, CType >::Type | Type |
This class
determines whether the specified t_PROTOTYPE
is a const
, volatile
or noexcept
member function of the specified t_TYPE
. The Type
member will be a correctly const and/or volatile qualified version of t_TYPE
. This metafunction is necessary because some old compilers do not correctly dispatch to the correct partial specialization of MemberFunctionPointerTraits_Imp
based on cv-qualification of the member-function pointer.
See Component bslmf_memberfunctionpointertraits
typedef If<IS_CONST, const t_TYPE, t_TYPE>::Type bslmf::MemberFunctionPointerTraits_ClassType< t_PROTOTYPE, t_BSLMF_RETURN, t_TYPE, t_ARGS >::CType |
typedef If<IS_VOLATILE, volatile CType, CType>::Type bslmf::MemberFunctionPointerTraits_ClassType< t_PROTOTYPE, t_BSLMF_RETURN, t_TYPE, t_ARGS >::Type |
anonymous enum |