12 static constexpr bool value =
false;
25template<
template<
typename...>
class ClassTemplate,
typename... Types>
29 static constexpr bool value =
true;
32template<
typename Type>
35template<
typename Type>
38template<
typename Type>
44 std::vector<int> v{1, 2, 3, 4, 5};
56 std::vector<double> v{4.6, 6.7};
73 stream <<
"The type of the first parameter: "
82 using tuple_t = std::tuple<>;
84 if constexpr(is_template_v<tuple_t>)
90 if constexpr(is_valid_type_v<first_t>)
92 stream <<
"The first parameter type of tuple_t: "
97 stream <<
"The first parameter type of tuple_t is EMPTY!!!"<<
endl;
constexpr bool is_valid_type_v
void test_is_template_v()
constexpr bool is_template_v
void test_first_paremter_t()
typename is_template_st< Type >::type first_template_parameter_t
static constexpr bool value
Stream output operators << are implemented.
#define Tpf_GetTypeName(type_arg)
A macro that returns type_arg's string name.
#define Tpf_GetTypeCategory(instance_arg)
A macro that returns instance_arg's type category string name.