8#ifndef INCLUDED_BSLMF_REMOVEPOINTER
9#define INCLUDED_BSLMF_REMOVEPOINTER
95#include <bslscm_version.h>
102#ifndef BDE_DONT_ALLOW_TRANSITIVE_INCLUDES
122template <
class t_TYPE>
138template <
class t_TYPE>
154template <
class t_TYPE>
170template <
class t_TYPE>
186template <
class t_TYPE>
196#if defined(BSLS_PLATFORM_CMP_IBM)
197template <
class t_TYPE,
bool isFunctionPtr>
204template <
class t_TYPE>
205struct RemovePointer_Aix<t_TYPE, true> {
213 typedef typename FunctionPointerTraits<t_TYPE>::FuncType Type;
217#if defined(BSLS_PLATFORM_CMP_MSVC)
218template <class t_TYPE, bool isFunctionPtr = IsFunctionPointer<t_TYPE>::value>
219struct RemovePointer_Msvc : RemovePointer_Imp<t_TYPE> {
230template <
class t_TYPE>
231struct RemovePointer_Msvc<t_TYPE const, true> : RemovePointer_Imp<t_TYPE> {
234template <
class t_TYPE>
235struct RemovePointer_Msvc<t_TYPE volatile, true> : RemovePointer_Imp<t_TYPE> {
238template <
class t_TYPE>
239struct RemovePointer_Msvc<t_TYPE const volatile, true>
240: RemovePointer_Imp<t_TYPE> {
261template <
class t_TYPE>
264#if defined(BSLS_PLATFORM_CMP_IBM)
265 typedef typename BloombergLP::bslmf::RemovePointer_Aix<
267 BloombergLP::bslmf::IsFunctionPointer<t_TYPE>::value>::Type
type;
268#elif defined(BSLS_PLATFORM_CMP_MSVC)
269 typedef typename BloombergLP::bslmf::RemovePointer_Msvc<t_TYPE>::Type
type;
274 typedef typename BloombergLP::bslmf::RemovePointer_Imp<t_TYPE>::Type
type;
279#ifdef BSLS_COMPILERFEATURES_SUPPORT_ALIAS_TEMPLATES
287template <
class t_TYPE>
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bdlat_valuetypefunctions.h:939
Definition bdlbb_blob.h:579
Definition bslmf_removepointer.h:262
BloombergLP::bslmf::RemovePointer_Imp< t_TYPE >::Type type
Definition bslmf_removepointer.h:274
t_TYPE Type
Definition bslmf_removepointer.h:145
t_TYPE Type
Definition bslmf_removepointer.h:161
t_TYPE Type
Definition bslmf_removepointer.h:193
t_TYPE Type
Definition bslmf_removepointer.h:177
Definition bslmf_removepointer.h:123
t_TYPE Type
This typedef is an alias to the (template parameter) t_TYPE.
Definition bslmf_removepointer.h:128