/** \file
\brief type_traits public header */
-#ifndef HH_type_traits_
-#define HH_type_traits_ 1
+#ifndef HH_SENF_Utils_type_traits_
+#define HH_SENF_Utils_type_traits_ 1
// Custom includes
#include <boost/type_traits/function_traits.hpp>
>::value ));
\endcode
- \tparam MemberPointer type to return member pointer from
+ \tparam MemberPointer type to remove member pointer from
*/
template < class MemberPointer > struct remove_member_pointer
{
typedef T type;
};
+ template < class C, class T > struct remove_member_pointer <T (C::* const) >
+ {
+ typedef T type;
+ };
+
#endif
/** \brief Get class of a member pointer
typedef C type;
};
+ template < class C, class T > struct member_class <T (C::* const) >
+ {
+ typedef C type;
+ };
+
#endif
/** \brief Remove any type of pointer from type