21 #ifndef GRPC_CORE_LIB_PROMISE_DETAIL_SWITCH_H
22 #define GRPC_CORE_LIB_PROMISE_DETAIL_SWITCH_H
30 template <
typename R,
typename F0>
39 template <
typename R,
typename F0,
typename F1>
50 template <
typename R,
typename F0,
typename F1,
typename F2>
63 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3>
78 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
96 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
97 typename F4,
typename F5>
116 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
117 typename F4,
typename F5,
typename F6>
138 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
139 typename F4,
typename F5,
typename F6,
typename F7>
162 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
163 typename F4,
typename F5,
typename F6,
typename F7,
typename F8>
189 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
190 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
219 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
220 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
221 typename F9,
typename F10>
223 F8
f8, F9
f9, F10 f10) {
251 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
252 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
253 typename F9,
typename F10,
typename F11>
255 F8
f8, F9
f9, F10 f10, F11 f11) {
285 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
286 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
287 typename F9,
typename F10,
typename F11,
typename F12>
289 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12) {
321 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
322 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
323 typename F9,
typename F10,
typename F11,
typename F12,
typename F13>
325 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13) {
359 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
360 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
361 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
364 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14) {
400 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
401 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
402 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
403 typename F14,
typename F15>
405 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15) {
443 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
444 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
445 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
446 typename F14,
typename F15,
typename F16>
448 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
489 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
490 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
491 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
492 typename F14,
typename F15,
typename F16,
typename F17>
494 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
537 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
538 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
539 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
540 typename F14,
typename F15,
typename F16,
typename F17,
typename F18>
542 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
543 F16 f16, F17 f17, F18 f18) {
587 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
588 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
589 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
590 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
593 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
594 F16 f16, F17 f17, F18 f18, F19 f19) {
640 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
641 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
642 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
643 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
644 typename F19,
typename F20>
646 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
647 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20) {
695 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
696 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
697 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
698 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
699 typename F19,
typename F20,
typename F21>
701 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
702 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21) {
752 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
753 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
754 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
755 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
756 typename F19,
typename F20,
typename F21,
typename F22>
758 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
759 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22) {
811 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
812 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
813 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
814 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
815 typename F19,
typename F20,
typename F21,
typename F22,
typename F23>
817 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
818 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22,
873 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
874 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
875 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
876 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
877 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
880 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
881 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
938 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
939 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
940 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
941 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
942 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
943 typename F24,
typename F25>
945 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
946 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1005 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1006 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1007 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1008 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1009 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1010 typename F24,
typename F25,
typename F26>
1012 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1013 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1014 F24 f24, F25 f25, F26 f26) {
1074 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1075 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1076 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1077 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1078 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1079 typename F24,
typename F25,
typename F26,
typename F27>
1081 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1082 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1083 F24 f24, F25 f25, F26 f26, F27 f27) {
1145 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1146 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1147 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1148 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1149 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1150 typename F24,
typename F25,
typename F26,
typename F27,
typename F28>
1152 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1153 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1154 F24 f24, F25 f25, F26 f26, F27 f27, F28 f28) {
1218 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1219 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1220 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1221 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1222 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1223 typename F24,
typename F25,
typename F26,
typename F27,
typename F28,
1226 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1227 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1228 F24 f24, F25 f25, F26 f26, F27 f27, F28 f28, F29 f29) {
1294 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1295 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1296 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1297 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1298 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1299 typename F24,
typename F25,
typename F26,
typename F27,
typename F28,
1300 typename F29,
typename F30>
1302 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1303 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1304 F24 f24, F25 f25, F26 f26, F27 f27, F28 f28, F29 f29, F30 f30) {
1372 template <
typename R,
typename F0,
typename F1,
typename F2,
typename F3,
1373 typename F4,
typename F5,
typename F6,
typename F7,
typename F8,
1374 typename F9,
typename F10,
typename F11,
typename F12,
typename F13,
1375 typename F14,
typename F15,
typename F16,
typename F17,
typename F18,
1376 typename F19,
typename F20,
typename F21,
typename F22,
typename F23,
1377 typename F24,
typename F25,
typename F26,
typename F27,
typename F28,
1378 typename F29,
typename F30,
typename F31>
1380 F8
f8, F9
f9, F10 f10, F11 f11, F12 f12, F13 f13, F14 f14, F15 f15,
1381 F16 f16, F17 f17, F18 f18, F19 f19, F20 f20, F21 f21, F22 f22, F23 f23,
1382 F24 f24, F25 f25, F26 f26, F27 f27, F28 f28, F29 f29, F30 f30,
1455 #endif // GRPC_CORE_LIB_PROMISE_DETAIL_SWITCH_H