Advertisement
Radfler

::remove_member_pointer

Jun 13th, 2016
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.52 KB | None | 0 0
  1. #include <type_traits>
  2. #include <utility>
  3.  
  4. namespace details {
  5.  
  6.   template<typename Type>
  7.   struct remove_member_pointer {
  8.     using type = Type;
  9.   };
  10.  
  11.   template<typename Member, typename Class>
  12.   struct remove_member_pointer<Member Class::*> {
  13.     using type = Member;
  14.   };
  15.  
  16. }
  17.  
  18. template<typename Type>
  19. struct remove_member_pointer {
  20.   using type = typename details::remove_member_pointer<Type>::type;
  21. };
  22.  
  23. template<typename Type>
  24. using remove_member_pointer_t = typename remove_member_pointer<Type>::type;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement