61 constexpr size_t DeviNum =
sizeof...(Devirtualizers);
62 if constexpr (DeviNum == 0) {
66 if constexpr (DeviNum == 1) {
67 return std::get<0>(devis).devirtualize([&](
auto param0) {
72 if constexpr (DeviNum == 2) {
73 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
74 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
80 if constexpr (DeviNum == 3) {
81 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
82 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
83 return std::get<2>(devis).devirtualize([&](
auto &¶m2) {
84 fn(param0, param1, param2);
90 if constexpr (DeviNum == 4) {
91 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
92 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
93 return std::get<2>(devis).devirtualize([&](
auto &¶m2) {
94 return std::get<3>(devis).devirtualize([&](
auto &¶m3) {
95 fn(param0, param1, param2, param3);
102 if constexpr (DeviNum == 5) {
103 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
104 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
105 return std::get<2>(devis).devirtualize([&](
auto &¶m2) {
106 return std::get<3>(devis).devirtualize([&](
auto &¶m3) {
107 return std::get<4>(devis).devirtualize([&](
auto &¶m4) {
108 fn(param0, param1, param2, param3, param4);
116 if constexpr (DeviNum == 6) {
117 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
118 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
119 return std::get<2>(devis).devirtualize([&](
auto &¶m2) {
120 return std::get<3>(devis).devirtualize([&](
auto &¶m3) {
121 return std::get<4>(devis).devirtualize([&](
auto &¶m4) {
122 return std::get<5>(devis).devirtualize([&](
auto &¶m5) {
123 fn(param0, param1, param2, param3, param4, param5);
132 if constexpr (DeviNum == 7) {
133 return std::get<0>(devis).devirtualize([&](
auto &¶m0) {
134 return std::get<1>(devis).devirtualize([&](
auto &¶m1) {
135 return std::get<2>(devis).devirtualize([&](
auto &¶m2) {
136 return std::get<3>(devis).devirtualize([&](
auto &¶m3) {
137 return std::get<4>(devis).devirtualize([&](
auto &¶m4) {
138 return std::get<5>(devis).devirtualize([&](
auto &¶m5) {
139 return std::get<6>(devis).devirtualize([&](
auto &¶m6) {
140 fn(param0, param1, param2, param3, param4, param5, param6);