Go to the documentation of this file. 14 # ifndef MSGPACK_PREPROCESSOR_LIST_FOR_EACH_PRODUCT_HPP 15 # define MSGPACK_PREPROCESSOR_LIST_FOR_EACH_PRODUCT_HPP 29 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG() 30 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT(macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(MSGPACK_PP_FOR, macro, size, MSGPACK_PP_TUPLE_TO_LIST(size, tuple)) 32 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT(macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_Q(macro, size, tuple) 33 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_Q(macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(MSGPACK_PP_FOR, macro, size, MSGPACK_PP_TUPLE_TO_LIST(size, tuple)) 38 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG() 39 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_R(r, macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(MSGPACK_PP_FOR_ ## r, macro, size, MSGPACK_PP_TUPLE_TO_LIST(size, tuple)) 41 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_R(r, macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_R_Q(r, macro, size, tuple) 42 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_R_Q(r, macro, size, tuple) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(MSGPACK_PP_FOR_ ## r, macro, size, MSGPACK_PP_TUPLE_TO_LIST(size, tuple)) 45 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG() 46 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(impl, macro, size, lists) impl((MSGPACK_PP_LIST_FIRST(lists), MSGPACK_PP_LIST_REST(lists), MSGPACK_PP_NIL, macro, size), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_0) 48 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E(impl, macro, size, lists) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E_D(impl, macro, size, lists) 49 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_E_D(impl, macro, size, lists) impl((MSGPACK_PP_LIST_FIRST(lists), MSGPACK_PP_LIST_REST(lists), MSGPACK_PP_NIL, macro, size), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_0) 52 # if MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_STRICT() 53 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P_I data 54 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P_I(a, b, res, macro, size) MSGPACK_PP_LIST_IS_CONS(a) 56 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P(r, data) MSGPACK_PP_LIST_IS_CONS(MSGPACK_PP_TUPLE_ELEM(5, 0, data)) 59 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 60 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O_I data 61 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O_I(a, b, res, macro, size) (MSGPACK_PP_LIST_REST(a), b, res, macro, size) 63 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O(r, data) (MSGPACK_PP_LIST_REST(MSGPACK_PP_TUPLE_ELEM(5, 0, data)), MSGPACK_PP_TUPLE_ELEM(5, 1, data), MSGPACK_PP_TUPLE_ELEM(5, 2, data), MSGPACK_PP_TUPLE_ELEM(5, 3, data), MSGPACK_PP_TUPLE_ELEM(5, 4, data)) 66 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG() 67 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_I(r, MSGPACK_PP_TUPLE_ELEM(5, 0, data), MSGPACK_PP_TUPLE_ELEM(5, 1, data), MSGPACK_PP_TUPLE_ELEM(5, 2, data), MSGPACK_PP_TUPLE_ELEM(5, 3, data), MSGPACK_PP_TUPLE_ELEM(5, 4, data)) 69 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_D(r, MSGPACK_PP_TUPLE_REM_5 data) 70 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_D(r, data_e) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_I(r, data_e) 73 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_I(r, a, b, res, macro, size) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_II(r, macro, MSGPACK_PP_LIST_TO_TUPLE_R(r, (MSGPACK_PP_LIST_FIRST(a), res)), size) 74 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_II(r, macro, args, size) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_III(r, macro, args, size) 75 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I_III(r, macro, args, size) macro(r, MSGPACK_PP_TUPLE_REVERSE(size, args)) 77 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, i) MSGPACK_PP_IF(MSGPACK_PP_LIST_IS_CONS(MSGPACK_PP_TUPLE_ELEM(5, 1, data)), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_ ## i, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_I) 79 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 80 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H_I data 82 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H_I(MSGPACK_PP_TUPLE_ELEM(5, 0, data), MSGPACK_PP_TUPLE_ELEM(5, 1, data), MSGPACK_PP_TUPLE_ELEM(5, 2, data), MSGPACK_PP_TUPLE_ELEM(5, 3, data), MSGPACK_PP_TUPLE_ELEM(5, 4, data)) 85 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H_I(a, b, res, macro, size) (MSGPACK_PP_LIST_FIRST(b), MSGPACK_PP_LIST_REST(b), (MSGPACK_PP_LIST_FIRST(a), res), macro, size) 87 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_0(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 0)(r, data) 88 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_1(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 1)(r, data) 89 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_2(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 2)(r, data) 90 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_3(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 3)(r, data) 91 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_4(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 4)(r, data) 92 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_5(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 5)(r, data) 93 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_6(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 6)(r, data) 94 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_7(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 7)(r, data) 95 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_8(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 8)(r, data) 96 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_9(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 9)(r, data) 97 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_10(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 10)(r, data) 98 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_11(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 11)(r, data) 99 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_12(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 12)(r, data) 100 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_13(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 13)(r, data) 101 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_14(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 14)(r, data) 102 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_15(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 15)(r, data) 103 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_16(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 16)(r, data) 104 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_17(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 17)(r, data) 105 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_18(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 18)(r, data) 106 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_19(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 19)(r, data) 107 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_20(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 20)(r, data) 108 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_21(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 21)(r, data) 109 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_22(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 22)(r, data) 110 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_23(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 23)(r, data) 111 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_24(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 24)(r, data) 112 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_25(r, data) MSGPACK_PP_LIST_FOR_EACH_PRODUCT_C(data, 25)(r, data) 114 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_0(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_1) 115 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_1(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_2) 116 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_2(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_3) 117 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_3(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_4) 118 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_4(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_5) 119 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_5(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_6) 120 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_6(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_7) 121 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_7(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_8) 122 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_8(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_9) 123 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_9(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_10) 124 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_10(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_11) 125 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_11(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_12) 126 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_12(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_13) 127 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_13(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_14) 128 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_14(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_15) 129 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_15(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_16) 130 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_16(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_17) 131 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_17(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_18) 132 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_18(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_19) 133 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_19(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_20) 134 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_20(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_21) 135 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_21(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_22) 136 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_22(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_23) 137 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_23(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_24) 138 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_24(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_25) 139 # define MSGPACK_PP_LIST_FOR_EACH_PRODUCT_N_25(r, data) MSGPACK_PP_FOR_ ## r(MSGPACK_PP_LIST_FOR_EACH_PRODUCT_H(data), MSGPACK_PP_LIST_FOR_EACH_PRODUCT_P, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_O, MSGPACK_PP_LIST_FOR_EACH_PRODUCT_M_26)