File indexing completed on 2025-01-18 09:50:24
0001
0002
0003
0004
0005
0006
0007
0008 template<typename This , typename A0 , typename A1>
0009 struct result<This(A0 , A1)>
0010 {
0011 typedef
0012 typename result_of::make_expr<
0013 Tag
0014 , Domain
0015 , A0 , A1
0016 >::type
0017 type;
0018 };
0019
0020
0021 template<typename A0 , typename A1>
0022 BOOST_FORCEINLINE
0023 typename result_of::make_expr<
0024 Tag
0025 , Domain
0026 , const A0 , const A1
0027 >::type const
0028 operator ()(const A0 &a0 , const A1 &a1) const
0029 {
0030 return proto::detail::make_expr_<
0031 Tag
0032 , Domain
0033 , const A0 , const A1
0034 >()(a0 , a1);
0035 }
0036 template<typename This , typename A0 , typename A1 , typename A2>
0037 struct result<This(A0 , A1 , A2)>
0038 {
0039 typedef
0040 typename result_of::make_expr<
0041 Tag
0042 , Domain
0043 , A0 , A1 , A2
0044 >::type
0045 type;
0046 };
0047
0048
0049 template<typename A0 , typename A1 , typename A2>
0050 BOOST_FORCEINLINE
0051 typename result_of::make_expr<
0052 Tag
0053 , Domain
0054 , const A0 , const A1 , const A2
0055 >::type const
0056 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2) const
0057 {
0058 return proto::detail::make_expr_<
0059 Tag
0060 , Domain
0061 , const A0 , const A1 , const A2
0062 >()(a0 , a1 , a2);
0063 }
0064 template<typename This , typename A0 , typename A1 , typename A2 , typename A3>
0065 struct result<This(A0 , A1 , A2 , A3)>
0066 {
0067 typedef
0068 typename result_of::make_expr<
0069 Tag
0070 , Domain
0071 , A0 , A1 , A2 , A3
0072 >::type
0073 type;
0074 };
0075
0076
0077 template<typename A0 , typename A1 , typename A2 , typename A3>
0078 BOOST_FORCEINLINE
0079 typename result_of::make_expr<
0080 Tag
0081 , Domain
0082 , const A0 , const A1 , const A2 , const A3
0083 >::type const
0084 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3) const
0085 {
0086 return proto::detail::make_expr_<
0087 Tag
0088 , Domain
0089 , const A0 , const A1 , const A2 , const A3
0090 >()(a0 , a1 , a2 , a3);
0091 }
0092 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
0093 struct result<This(A0 , A1 , A2 , A3 , A4)>
0094 {
0095 typedef
0096 typename result_of::make_expr<
0097 Tag
0098 , Domain
0099 , A0 , A1 , A2 , A3 , A4
0100 >::type
0101 type;
0102 };
0103
0104
0105 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
0106 BOOST_FORCEINLINE
0107 typename result_of::make_expr<
0108 Tag
0109 , Domain
0110 , const A0 , const A1 , const A2 , const A3 , const A4
0111 >::type const
0112 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4) const
0113 {
0114 return proto::detail::make_expr_<
0115 Tag
0116 , Domain
0117 , const A0 , const A1 , const A2 , const A3 , const A4
0118 >()(a0 , a1 , a2 , a3 , a4);
0119 }
0120 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
0121 struct result<This(A0 , A1 , A2 , A3 , A4 , A5)>
0122 {
0123 typedef
0124 typename result_of::make_expr<
0125 Tag
0126 , Domain
0127 , A0 , A1 , A2 , A3 , A4 , A5
0128 >::type
0129 type;
0130 };
0131
0132
0133 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
0134 BOOST_FORCEINLINE
0135 typename result_of::make_expr<
0136 Tag
0137 , Domain
0138 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
0139 >::type const
0140 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4 , const A5 &a5) const
0141 {
0142 return proto::detail::make_expr_<
0143 Tag
0144 , Domain
0145 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5
0146 >()(a0 , a1 , a2 , a3 , a4 , a5);
0147 }
0148 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
0149 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6)>
0150 {
0151 typedef
0152 typename result_of::make_expr<
0153 Tag
0154 , Domain
0155 , A0 , A1 , A2 , A3 , A4 , A5 , A6
0156 >::type
0157 type;
0158 };
0159
0160
0161 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
0162 BOOST_FORCEINLINE
0163 typename result_of::make_expr<
0164 Tag
0165 , Domain
0166 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
0167 >::type const
0168 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4 , const A5 &a5 , const A6 &a6) const
0169 {
0170 return proto::detail::make_expr_<
0171 Tag
0172 , Domain
0173 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6
0174 >()(a0 , a1 , a2 , a3 , a4 , a5 , a6);
0175 }
0176 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
0177 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7)>
0178 {
0179 typedef
0180 typename result_of::make_expr<
0181 Tag
0182 , Domain
0183 , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7
0184 >::type
0185 type;
0186 };
0187
0188
0189 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
0190 BOOST_FORCEINLINE
0191 typename result_of::make_expr<
0192 Tag
0193 , Domain
0194 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
0195 >::type const
0196 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4 , const A5 &a5 , const A6 &a6 , const A7 &a7) const
0197 {
0198 return proto::detail::make_expr_<
0199 Tag
0200 , Domain
0201 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7
0202 >()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7);
0203 }
0204 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
0205 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8)>
0206 {
0207 typedef
0208 typename result_of::make_expr<
0209 Tag
0210 , Domain
0211 , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8
0212 >::type
0213 type;
0214 };
0215
0216
0217 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
0218 BOOST_FORCEINLINE
0219 typename result_of::make_expr<
0220 Tag
0221 , Domain
0222 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
0223 >::type const
0224 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4 , const A5 &a5 , const A6 &a6 , const A7 &a7 , const A8 &a8) const
0225 {
0226 return proto::detail::make_expr_<
0227 Tag
0228 , Domain
0229 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8
0230 >()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8);
0231 }
0232 template<typename This , typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
0233 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9)>
0234 {
0235 typedef
0236 typename result_of::make_expr<
0237 Tag
0238 , Domain
0239 , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9
0240 >::type
0241 type;
0242 };
0243
0244
0245 template<typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
0246 BOOST_FORCEINLINE
0247 typename result_of::make_expr<
0248 Tag
0249 , Domain
0250 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 , const A9
0251 >::type const
0252 operator ()(const A0 &a0 , const A1 &a1 , const A2 &a2 , const A3 &a3 , const A4 &a4 , const A5 &a5 , const A6 &a6 , const A7 &a7 , const A8 &a8 , const A9 &a9) const
0253 {
0254 return proto::detail::make_expr_<
0255 Tag
0256 , Domain
0257 , const A0 , const A1 , const A2 , const A3 , const A4 , const A5 , const A6 , const A7 , const A8 , const A9
0258 >()(a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9);
0259 }