57 template<
typename A,
typename B>
struct dummy_op;
68 template<
typename A,
typename B>
struct dummy_test { constexpr
static bool value =
false; constexpr
static int global_flags = 0; };
93 VERIFY((
is_same<
typename gen_numeric_list<int, 10>::type,
numeric_list<int, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9>>::
value));
99 VERIFY((
is_same<
typename gen_numeric_list<int, 10, 42>::type,
numeric_list<int, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51>>::
value));
105 VERIFY((
is_same<
typename gen_numeric_list_reversed<int, 10>::type,
numeric_list<int, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0>>::
value));
111 VERIFY((
is_same<
typename gen_numeric_list_reversed<int, 10, 42>::type,
numeric_list<int, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42>>::
value));
117 VERIFY((
is_same<
typename gen_numeric_list_swapped_pair<int, 10, 2, 3>::type,
numeric_list<int, 0, 1, 3, 2, 4, 5, 6, 7, 8, 9>>::
value));
122 VERIFY((
is_same<
typename gen_numeric_list_swapped_pair<int, 5, 44, 45, 42>::type,
numeric_list<int, 42, 43, 45, 44, 46>>::
value));
123 VERIFY((
is_same<
typename gen_numeric_list_swapped_pair<int, 10, 44, 45, 42>::type,
numeric_list<int, 42, 43, 45, 44, 46, 47, 48, 49, 50, 51>>::
value));
129 VERIFY((
is_same<
typename gen_numeric_list_repeated<int, 10, 0>::type,
numeric_list<int, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>>::
value));
142 VERIFY((
is_same<
typename concat<
numeric_list<int, 0, 0>,
numeric_list<int, 0, 0>>::
type,
numeric_list<int, 0, 0, 0, 0>>::
value));
143 VERIFY((
is_same<
typename concat<
numeric_list<int, 0, 0>,
numeric_list<int, 1, 2>>::
type,
numeric_list<int, 0, 0, 1, 2>>::
value));
235 template<
typename... tt>
245 test_id_numeric<1, 4, 6>();
246 test_id_type<dummy_a, dummy_b, dummy_c>();
319 VERIFY((array_zip<product_op>(
a,
b) ==
d));
320 VERIFY((array_apply<times2_op>(
b) ==
e));
332 VERIFY((repeat<6, int>(2) == a6));
334 int data[5] = { 0, 1, 2, 3, 4 };
336 VERIFY_IS_EQUAL((instantiate_by_c_array<dummy_inst, int, 1>(data).c), 1);
337 VERIFY_IS_EQUAL((instantiate_by_c_array<dummy_inst, int, 2>(data).c), 2);
338 VERIFY_IS_EQUAL((instantiate_by_c_array<dummy_inst, int, 3>(data).c), 3);
339 VERIFY_IS_EQUAL((instantiate_by_c_array<dummy_inst, int, 4>(data).c), 4);
340 VERIFY_IS_EQUAL((instantiate_by_c_array<dummy_inst, int, 5>(data).c), 5);
constexpr EIGEN_STRONG_INLINE array< T, N > array_reverse(array< T, N > arr)
constexpr EIGEN_STRONG_INLINE array< decltype(Op::run(A())), N > array_apply(array< A, N > a)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE std::ptrdiff_t array_prod(const Sizes< Indices... > &)
EIGEN_DEVICE_FUNC constexpr EIGEN_STRONG_INLINE auto array_sum(const array< T, N > &arr) -> decltype(array_reduce< sum_op, T, N >(arr, static_cast< T >(0)))
constexpr EIGEN_STRONG_INLINE auto array_apply_and_reduce(array< A, N > a) -> decltype(h_array_apply_and_reduce< Reducer, Op, A, N >(a, typename gen_numeric_list< int, N >::type()))
constexpr EIGEN_STRONG_INLINE auto array_zip_and_reduce(array< A, N > a, array< B, N > b) -> decltype(h_array_zip_and_reduce< Reducer, Op, A, B, N >(a, b, typename gen_numeric_list< int, N >::type()))
dummy_inst(int, int, int, int, int)
#define VERIFY_IS_APPROX(a, b)
#define VERIFY_IS_EQUAL(a, b)
EIGEN_DEVICE_FUNC constexpr EIGEN_STRONG_INLINE auto array_reduce(const array< T, N > &arr, T identity) -> decltype(h_array_reduce< Reducer, T, N >::run(arr, identity))
Array< int, Dynamic, 1 > v
Array< double, 1, 3 > e(1./3., 0.5, 2.)
constexpr descr< 0 > concat()
constexpr EIGEN_STRONG_INLINE array< decltype(Op::run(A(), B())), N > array_zip(array< A, N > a, array< B, N > b)
#define CALL_SUBTEST(FUNC)
constexprdecltype(reduce< sum_op, Ts... >::run((*((Ts *) 0))...)) EIGEN_STRONG_INLIN arg_sum)(Ts... ts)
dummy_inst(int, int, int)
dummy_inst(int, int, int, int)
Container::iterator get(Container &c, Position position)
InstType instantiate_by_c_array(ArrType *arr)
EIGEN_DEVICE_FUNC constexprdecltype(reduce< product_op, Ts... >::run((*((Ts *) 0))...)) EIGEN_STRONG_INLIN arg_prod)(Ts... ts)
constexpr array< t, n > repeat(t v)