22 #include <type_traits> 35 template<
class T1,
class T2>
struct MfunBin {
49 using type = std::is_integral<T>;
53 using type = std::is_void<T>;
193 template<
class T1,
class T2>
struct F {};
205 EXPECT_EQ(
true, (std::is_same<
fold<
typelist<X1, X2, X3, X4>,
void, Q>,
F<
F<
F<
F<void, X1>, X2>, X3>, X4>>()));
211 EXPECT_EQ(
true, (std::is_same<
rev_fold<
typelist<X1, X2, X3, X4>,
void, Q>,
F<X1,
F<X2,
F<X3,
F<X4, void>>>>>()));
STL's core language concepts.
#define EXPECT_EQ(val1, val2)