Advertisement
Radfler

::is_class_template

Jun 13th, 2016
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.55 KB | None | 0 0
  1. #include <type_traits>
  2. #include <utility>
  3.  
  4. namespace details {
  5.  
  6.   template<typename Type>
  7.   struct is_class_template {
  8.     using type = std::false_type;  
  9.   };
  10.  
  11.   template<template<typename...> class ClassTemplate, typename... TemplateArgs>
  12.   struct is_class_template<ClassTemplate<TemplateArgs...>> {
  13.     using type = std::true_type;
  14.   };
  15.  
  16. }
  17.  
  18. template<typename Type>
  19. struct is_class_template : details::is_class_template<Type>::type { };
  20.  
  21. template<typename Type>
  22. constexpr bool is_class_template_v = is_class_template<Type>::value;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement