32 #ifndef CERES_PUBLIC_INTERNAL_VARIADIC_EVALUATE_H_
33 #define CERES_PUBLIC_INTERNAL_VARIADIC_EVALUATE_H_
48 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4,
49 int N5,
int N6,
int N7,
int N8,
int N9>
51 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
52 return functor(input[0],
66 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4,
67 int N5,
int N6,
int N7,
int N8>
68 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, N4, N5, N6, N7, N8, 0> {
69 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
70 return functor(input[0],
83 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4,
84 int N5,
int N6,
int N7>
85 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, N4, N5, N6, N7, 0, 0> {
86 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
87 return functor(input[0],
99 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4,
101 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, N4, N5, N6, 0, 0, 0> {
102 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
103 return functor(input[0],
114 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4,
116 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, N4, N5, 0, 0, 0, 0> {
117 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
118 return functor(input[0],
128 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3,
int N4>
129 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, N4, 0, 0, 0, 0, 0> {
130 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
131 return functor(input[0],
140 template<
typename Functor,
typename T,
int N0,
int N1,
int N2,
int N3>
141 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, N3, 0, 0, 0, 0, 0, 0> {
142 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
143 return functor(input[0],
151 template<
typename Functor,
typename T,
int N0,
int N1,
int N2>
152 struct VariadicEvaluate<
Functor,
T, N0, N1, N2, 0, 0, 0, 0, 0, 0, 0> {
153 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
154 return functor(input[0],
161 template<
typename Functor,
typename T,
int N0,
int N1>
162 struct VariadicEvaluate<
Functor,
T, N0, N1, 0, 0, 0, 0, 0, 0, 0, 0> {
163 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
164 return functor(input[0],
170 template<
typename Functor,
typename T,
int N0>
171 struct VariadicEvaluate<
Functor,
T, N0, 0, 0, 0, 0, 0, 0, 0, 0, 0> {
172 static bool Call(
const Functor& functor,
T const *
const *input,
T* output) {
173 return functor(input[0],
181 #endif // CERES_PUBLIC_INTERNAL_VARIADIC_EVALUATE_H_