File indexing completed on 2025-01-31 09:53:43
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 template <typename This, typename A0>
0016 struct result<This(A0 const&)>
0017 : detail::expression::function_eval<F, A0>
0018 {};
0019 template <typename A0>
0020 typename detail::expression::function_eval<F, A0>::type const
0021 operator()(A0 const& a0) const
0022 {
0023 return detail::expression::function_eval<F, A0>::make(f, a0);
0024 }
0025
0026
0027
0028
0029
0030
0031
0032 template <typename This, typename A0 , typename A1>
0033 struct result<This(A0 const& , A1 const&)>
0034 : detail::expression::function_eval<F, A0 , A1>
0035 {};
0036 template <typename A0 , typename A1>
0037 typename detail::expression::function_eval<F, A0 , A1>::type const
0038 operator()(A0 const& a0 , A1 const& a1) const
0039 {
0040 return detail::expression::function_eval<F, A0 , A1>::make(f, a0 , a1);
0041 }
0042
0043
0044
0045
0046
0047
0048
0049 template <typename This, typename A0 , typename A1 , typename A2>
0050 struct result<This(A0 const& , A1 const& , A2 const&)>
0051 : detail::expression::function_eval<F, A0 , A1 , A2>
0052 {};
0053 template <typename A0 , typename A1 , typename A2>
0054 typename detail::expression::function_eval<F, A0 , A1 , A2>::type const
0055 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2) const
0056 {
0057 return detail::expression::function_eval<F, A0 , A1 , A2>::make(f, a0 , a1 , a2);
0058 }
0059
0060
0061
0062
0063
0064
0065
0066 template <typename This, typename A0 , typename A1 , typename A2 , typename A3>
0067 struct result<This(A0 const& , A1 const& , A2 const& , A3 const&)>
0068 : detail::expression::function_eval<F, A0 , A1 , A2 , A3>
0069 {};
0070 template <typename A0 , typename A1 , typename A2 , typename A3>
0071 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3>::type const
0072 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3) const
0073 {
0074 return detail::expression::function_eval<F, A0 , A1 , A2 , A3>::make(f, a0 , a1 , a2 , a3);
0075 }
0076
0077
0078
0079
0080
0081
0082
0083 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
0084 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const&)>
0085 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4>
0086 {};
0087 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
0088 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4>::type const
0089 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4) const
0090 {
0091 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4>::make(f, a0 , a1 , a2 , a3 , a4);
0092 }
0093
0094
0095
0096
0097
0098
0099
0100 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
0101 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const&)>
0102 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5>
0103 {};
0104 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
0105 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5>::type const
0106 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5) const
0107 {
0108 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5>::make(f, a0 , a1 , a2 , a3 , a4 , a5);
0109 }
0110
0111
0112
0113
0114
0115
0116
0117 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
0118 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const&)>
0119 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6>
0120 {};
0121 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
0122 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6>::type const
0123 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6) const
0124 {
0125 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6>::make(f, a0 , a1 , a2 , a3 , a4 , a5 , a6);
0126 }
0127
0128
0129
0130
0131
0132
0133
0134 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
0135 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const&)>
0136 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
0137 {};
0138 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
0139 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>::type const
0140 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7) const
0141 {
0142 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>::make(f, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
0143 }
0144
0145
0146
0147
0148
0149
0150
0151 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
0152 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const& , A8 const&)>
0153 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
0154 {};
0155 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
0156 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>::type const
0157 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8) const
0158 {
0159 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>::make(f, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
0160 }
0161
0162
0163
0164
0165
0166
0167
0168 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
0169 struct result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const& , A8 const& , A9 const&)>
0170 : detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
0171 {};
0172 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
0173 typename detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>::type const
0174 operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9) const
0175 {
0176 return detail::expression::function_eval<F, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>::make(f, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
0177 }