annotate DEPENDENCIES/generic/include/boost/phoenix/operator/preprocessed/member_10.hpp @ 133:4acb5d8d80b6 tip

Don't fail environmental check if README.md exists (but .txt and no-suffix don't)
author Chris Cannam
date Tue, 30 Jul 2019 12:25:44 +0100
parents c530137014c0
children
rev   line source
Chris@16 1 /*==============================================================================
Chris@16 2 Copyright (c) 2005-2010 Joel de Guzman
Chris@16 3 Copyright (c) 2010 Thomas Heller
Chris@16 4
Chris@16 5 Distributed under the Boost Software License, Version 1.0. (See accompanying
Chris@16 6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Chris@16 7 ==============================================================================*/
Chris@16 8 namespace boost { namespace phoenix
Chris@16 9 {
Chris@101 10 namespace expression { template <typename Lhs, typename Rhs> struct mem_ptr : expr<proto::tag:: mem_ptr, Lhs, Rhs> {}; } namespace rule { struct mem_ptr : expression:: mem_ptr<meta_grammar, meta_grammar> {}; } template <typename Dummy> struct meta_grammar::case_<proto::tag:: mem_ptr, Dummy> : enable_rule<rule:: mem_ptr, Dummy> {}; namespace functional { typedef proto::functional::make_expr<proto::tag:: mem_ptr> make_mem_ptr; } namespace result_of { template <typename Lhs, typename Rhs> struct make_mem_ptr : boost::result_of< functional:: make_mem_ptr( Lhs, Rhs ) > {}; } template <typename Rhs, typename Lhs> inline typename result_of::make_mem_ptr<Rhs, Lhs>::type make_mem_ptr(Lhs const & lhs, Rhs const & rhs) { return functional::make_mem_ptr()(lhs, rhs); }
Chris@16 11 template<>
Chris@16 12 struct phoenix_generator::case_<proto::tag::mem_ptr>
Chris@16 13 : proto::or_<
Chris@16 14 proto::when<
Chris@16 15 proto::and_<
Chris@16 16 proto::mem_ptr<meta_grammar, proto::terminal<proto::_> >
Chris@16 17 , proto::if_<is_member_function_pointer<boost::remove_reference<proto::call<proto::_value(proto::_right)> > >()>
Chris@16 18 >
Chris@16 19 , proto::call<detail::make_mem_fun_ptr_gen(proto::_left, proto::call<proto::_value(proto::_right)>)>
Chris@16 20 >
Chris@16 21 , proto::otherwise<
Chris@16 22 proto::call<proto::pod_generator<actor>(proto::_)>
Chris@16 23 >
Chris@16 24 >
Chris@16 25 {};
Chris@16 26 namespace result_of
Chris@16 27 {
Chris@16 28 template <
Chris@16 29 typename Context
Chris@16 30 , typename A0 = void , typename A1 = void , typename A2 = void , typename A3 = void , typename A4 = void , typename A5 = void , typename A6 = void , typename A7 = void , typename A8 = void , typename A9 = void
Chris@16 31 , typename Dummy = void
Chris@16 32 >
Chris@16 33 struct mem_fun_ptr_eval;
Chris@16 34
Chris@16 35
Chris@16 36
Chris@16 37
Chris@16 38
Chris@16 39
Chris@16 40
Chris@16 41 template <typename Context, typename A0 , typename A1>
Chris@16 42 struct mem_fun_ptr_eval<Context, A0 , A1>
Chris@16 43 {
Chris@16 44 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1;
Chris@16 45 typedef
Chris@16 46 typename boost::result_of<
Chris@16 47 child1(
Chris@16 48 child1
Chris@16 49 )
Chris@16 50 >::type
Chris@16 51 type;
Chris@16 52 };
Chris@16 53
Chris@16 54
Chris@16 55
Chris@16 56
Chris@16 57
Chris@16 58
Chris@16 59
Chris@16 60 template <typename Context, typename A0 , typename A1 , typename A2>
Chris@16 61 struct mem_fun_ptr_eval<Context, A0 , A1 , A2>
Chris@16 62 {
Chris@16 63 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2;
Chris@16 64 typedef
Chris@16 65 typename boost::result_of<
Chris@16 66 child1(
Chris@16 67 child1 , child2
Chris@16 68 )
Chris@16 69 >::type
Chris@16 70 type;
Chris@16 71 };
Chris@16 72
Chris@16 73
Chris@16 74
Chris@16 75
Chris@16 76
Chris@16 77
Chris@16 78
Chris@16 79 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3>
Chris@16 80 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3>
Chris@16 81 {
Chris@16 82 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3;
Chris@16 83 typedef
Chris@16 84 typename boost::result_of<
Chris@16 85 child1(
Chris@16 86 child1 , child2 , child3
Chris@16 87 )
Chris@16 88 >::type
Chris@16 89 type;
Chris@16 90 };
Chris@16 91
Chris@16 92
Chris@16 93
Chris@16 94
Chris@16 95
Chris@16 96
Chris@16 97
Chris@16 98 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
Chris@16 99 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4>
Chris@16 100 {
Chris@16 101 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4;
Chris@16 102 typedef
Chris@16 103 typename boost::result_of<
Chris@16 104 child1(
Chris@16 105 child1 , child2 , child3 , child4
Chris@16 106 )
Chris@16 107 >::type
Chris@16 108 type;
Chris@16 109 };
Chris@16 110
Chris@16 111
Chris@16 112
Chris@16 113
Chris@16 114
Chris@16 115
Chris@16 116
Chris@16 117 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
Chris@16 118 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5>
Chris@16 119 {
Chris@16 120 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4; typedef typename evaluator::impl< A5 , Context , proto::empty_env >::result_type child5;
Chris@16 121 typedef
Chris@16 122 typename boost::result_of<
Chris@16 123 child1(
Chris@16 124 child1 , child2 , child3 , child4 , child5
Chris@16 125 )
Chris@16 126 >::type
Chris@16 127 type;
Chris@16 128 };
Chris@16 129
Chris@16 130
Chris@16 131
Chris@16 132
Chris@16 133
Chris@16 134
Chris@16 135
Chris@16 136 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
Chris@16 137 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6>
Chris@16 138 {
Chris@16 139 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4; typedef typename evaluator::impl< A5 , Context , proto::empty_env >::result_type child5; typedef typename evaluator::impl< A6 , Context , proto::empty_env >::result_type child6;
Chris@16 140 typedef
Chris@16 141 typename boost::result_of<
Chris@16 142 child1(
Chris@16 143 child1 , child2 , child3 , child4 , child5 , child6
Chris@16 144 )
Chris@16 145 >::type
Chris@16 146 type;
Chris@16 147 };
Chris@16 148
Chris@16 149
Chris@16 150
Chris@16 151
Chris@16 152
Chris@16 153
Chris@16 154
Chris@16 155 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
Chris@16 156 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
Chris@16 157 {
Chris@16 158 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4; typedef typename evaluator::impl< A5 , Context , proto::empty_env >::result_type child5; typedef typename evaluator::impl< A6 , Context , proto::empty_env >::result_type child6; typedef typename evaluator::impl< A7 , Context , proto::empty_env >::result_type child7;
Chris@16 159 typedef
Chris@16 160 typename boost::result_of<
Chris@16 161 child1(
Chris@16 162 child1 , child2 , child3 , child4 , child5 , child6 , child7
Chris@16 163 )
Chris@16 164 >::type
Chris@16 165 type;
Chris@16 166 };
Chris@16 167
Chris@16 168
Chris@16 169
Chris@16 170
Chris@16 171
Chris@16 172
Chris@16 173
Chris@16 174 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
Chris@16 175 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
Chris@16 176 {
Chris@16 177 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4; typedef typename evaluator::impl< A5 , Context , proto::empty_env >::result_type child5; typedef typename evaluator::impl< A6 , Context , proto::empty_env >::result_type child6; typedef typename evaluator::impl< A7 , Context , proto::empty_env >::result_type child7; typedef typename evaluator::impl< A8 , Context , proto::empty_env >::result_type child8;
Chris@16 178 typedef
Chris@16 179 typename boost::result_of<
Chris@16 180 child1(
Chris@16 181 child1 , child2 , child3 , child4 , child5 , child6 , child7 , child8
Chris@16 182 )
Chris@16 183 >::type
Chris@16 184 type;
Chris@16 185 };
Chris@16 186
Chris@16 187
Chris@16 188
Chris@16 189
Chris@16 190
Chris@16 191
Chris@16 192
Chris@16 193 template <typename Context, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
Chris@16 194 struct mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
Chris@16 195 {
Chris@16 196 typedef typename evaluator::impl< A0 , Context , proto::empty_env >::result_type child0; typedef typename evaluator::impl< A1 , Context , proto::empty_env >::result_type child1; typedef typename evaluator::impl< A2 , Context , proto::empty_env >::result_type child2; typedef typename evaluator::impl< A3 , Context , proto::empty_env >::result_type child3; typedef typename evaluator::impl< A4 , Context , proto::empty_env >::result_type child4; typedef typename evaluator::impl< A5 , Context , proto::empty_env >::result_type child5; typedef typename evaluator::impl< A6 , Context , proto::empty_env >::result_type child6; typedef typename evaluator::impl< A7 , Context , proto::empty_env >::result_type child7; typedef typename evaluator::impl< A8 , Context , proto::empty_env >::result_type child8; typedef typename evaluator::impl< A9 , Context , proto::empty_env >::result_type child9;
Chris@16 197 typedef
Chris@16 198 typename boost::result_of<
Chris@16 199 child1(
Chris@16 200 child1 , child2 , child3 , child4 , child5 , child6 , child7 , child8 , child9
Chris@16 201 )
Chris@16 202 >::type
Chris@16 203 type;
Chris@16 204 };
Chris@16 205 }
Chris@16 206 struct mem_fun_ptr_eval
Chris@16 207 {
Chris@16 208 template<typename Sig>
Chris@16 209 struct result;
Chris@16 210
Chris@16 211
Chris@16 212
Chris@16 213
Chris@16 214
Chris@16 215
Chris@16 216
Chris@16 217 template <typename This, typename A0 , typename A1, typename Context>
Chris@16 218 struct result<This(A0 , A1, Context)>
Chris@16 219 : result<This(A0 const& , A1 const&, Context)>
Chris@16 220 {};
Chris@16 221 template <typename This, typename A0 , typename A1, typename Context>
Chris@16 222 struct result<This(A0 & , A1 &, Context)>
Chris@16 223 : result_of::mem_fun_ptr_eval<Context, A0 , A1>
Chris@16 224 {};
Chris@16 225 template <typename A0 , typename A1, typename Context>
Chris@16 226 typename result_of::mem_fun_ptr_eval<Context, A0 , A1>::type
Chris@16 227 operator()(
Chris@16 228 A0 const& a0 , A1 const& a1
Chris@16 229 , Context const & ctx
Chris@16 230 ) const
Chris@16 231 {
Chris@16 232 return
Chris@16 233 (
Chris@16 234 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 235 ->*boost::phoenix::eval(a1, ctx)
Chris@16 236 )(
Chris@16 237
Chris@16 238 );
Chris@16 239 }
Chris@16 240
Chris@16 241
Chris@16 242
Chris@16 243
Chris@16 244
Chris@16 245
Chris@16 246
Chris@16 247
Chris@16 248 template <typename This, typename A0 , typename A1 , typename A2, typename Context>
Chris@16 249 struct result<This(A0 , A1 , A2, Context)>
Chris@16 250 : result<This(A0 const& , A1 const& , A2 const&, Context)>
Chris@16 251 {};
Chris@16 252 template <typename This, typename A0 , typename A1 , typename A2, typename Context>
Chris@16 253 struct result<This(A0 & , A1 & , A2 &, Context)>
Chris@16 254 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2>
Chris@16 255 {};
Chris@16 256 template <typename A0 , typename A1 , typename A2, typename Context>
Chris@16 257 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2>::type
Chris@16 258 operator()(
Chris@16 259 A0 const& a0 , A1 const& a1 , A2 const& a2
Chris@16 260 , Context const & ctx
Chris@16 261 ) const
Chris@16 262 {
Chris@16 263 return
Chris@16 264 (
Chris@16 265 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 266 ->*boost::phoenix::eval(a1, ctx)
Chris@16 267 )(
Chris@16 268 boost::phoenix::eval(a2, ctx)
Chris@16 269 );
Chris@16 270 }
Chris@16 271
Chris@16 272
Chris@16 273
Chris@16 274
Chris@16 275
Chris@16 276
Chris@16 277
Chris@16 278
Chris@16 279 template <typename This, typename A0 , typename A1 , typename A2 , typename A3, typename Context>
Chris@16 280 struct result<This(A0 , A1 , A2 , A3, Context)>
Chris@16 281 : result<This(A0 const& , A1 const& , A2 const& , A3 const&, Context)>
Chris@16 282 {};
Chris@16 283 template <typename This, typename A0 , typename A1 , typename A2 , typename A3, typename Context>
Chris@16 284 struct result<This(A0 & , A1 & , A2 & , A3 &, Context)>
Chris@16 285 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3>
Chris@16 286 {};
Chris@16 287 template <typename A0 , typename A1 , typename A2 , typename A3, typename Context>
Chris@16 288 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3>::type
Chris@16 289 operator()(
Chris@16 290 A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3
Chris@16 291 , Context const & ctx
Chris@16 292 ) const
Chris@16 293 {
Chris@16 294 return
Chris@16 295 (
Chris@16 296 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 297 ->*boost::phoenix::eval(a1, ctx)
Chris@16 298 )(
Chris@16 299 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx)
Chris@16 300 );
Chris@16 301 }
Chris@16 302
Chris@16 303
Chris@16 304
Chris@16 305
Chris@16 306
Chris@16 307
Chris@16 308
Chris@16 309
Chris@16 310 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4, typename Context>
Chris@16 311 struct result<This(A0 , A1 , A2 , A3 , A4, Context)>
Chris@16 312 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const&, Context)>
Chris@16 313 {};
Chris@16 314 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4, typename Context>
Chris@16 315 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 &, Context)>
Chris@16 316 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4>
Chris@16 317 {};
Chris@16 318 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4, typename Context>
Chris@16 319 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4>::type
Chris@16 320 operator()(
Chris@16 321 A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4
Chris@16 322 , Context const & ctx
Chris@16 323 ) const
Chris@16 324 {
Chris@16 325 return
Chris@16 326 (
Chris@16 327 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 328 ->*boost::phoenix::eval(a1, ctx)
Chris@16 329 )(
Chris@16 330 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx)
Chris@16 331 );
Chris@16 332 }
Chris@16 333
Chris@16 334
Chris@16 335
Chris@16 336
Chris@16 337
Chris@16 338
Chris@16 339
Chris@16 340
Chris@16 341 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5, typename Context>
Chris@16 342 struct result<This(A0 , A1 , A2 , A3 , A4 , A5, Context)>
Chris@16 343 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const&, Context)>
Chris@16 344 {};
Chris@16 345 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5, typename Context>
Chris@16 346 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 & , A5 &, Context)>
Chris@16 347 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5>
Chris@16 348 {};
Chris@16 349 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5, typename Context>
Chris@16 350 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5>::type
Chris@16 351 operator()(
Chris@16 352 A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5
Chris@16 353 , Context const & ctx
Chris@16 354 ) const
Chris@16 355 {
Chris@16 356 return
Chris@16 357 (
Chris@16 358 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 359 ->*boost::phoenix::eval(a1, ctx)
Chris@16 360 )(
Chris@16 361 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx) , boost::phoenix::eval(a5, ctx)
Chris@16 362 );
Chris@16 363 }
Chris@16 364
Chris@16 365
Chris@16 366
Chris@16 367
Chris@16 368
Chris@16 369
Chris@16 370
Chris@16 371
Chris@16 372 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6, typename Context>
Chris@16 373 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6, Context)>
Chris@16 374 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const&, Context)>
Chris@16 375 {};
Chris@16 376 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6, typename Context>
Chris@16 377 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 & , A5 & , A6 &, Context)>
Chris@16 378 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6>
Chris@16 379 {};
Chris@16 380 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6, typename Context>
Chris@16 381 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6>::type
Chris@16 382 operator()(
Chris@16 383 A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6
Chris@16 384 , Context const & ctx
Chris@16 385 ) const
Chris@16 386 {
Chris@16 387 return
Chris@16 388 (
Chris@16 389 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 390 ->*boost::phoenix::eval(a1, ctx)
Chris@16 391 )(
Chris@16 392 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx) , boost::phoenix::eval(a5, ctx) , boost::phoenix::eval(a6, ctx)
Chris@16 393 );
Chris@16 394 }
Chris@16 395
Chris@16 396
Chris@16 397
Chris@16 398
Chris@16 399
Chris@16 400
Chris@16 401
Chris@16 402
Chris@16 403 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7, typename Context>
Chris@16 404 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7, Context)>
Chris@16 405 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const&, Context)>
Chris@16 406 {};
Chris@16 407 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7, typename Context>
Chris@16 408 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 & , A5 & , A6 & , A7 &, Context)>
Chris@16 409 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
Chris@16 410 {};
Chris@16 411 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7, typename Context>
Chris@16 412 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>::type
Chris@16 413 operator()(
Chris@16 414 A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7
Chris@16 415 , Context const & ctx
Chris@16 416 ) const
Chris@16 417 {
Chris@16 418 return
Chris@16 419 (
Chris@16 420 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 421 ->*boost::phoenix::eval(a1, ctx)
Chris@16 422 )(
Chris@16 423 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx) , boost::phoenix::eval(a5, ctx) , boost::phoenix::eval(a6, ctx) , boost::phoenix::eval(a7, ctx)
Chris@16 424 );
Chris@16 425 }
Chris@16 426
Chris@16 427
Chris@16 428
Chris@16 429
Chris@16 430
Chris@16 431
Chris@16 432
Chris@16 433
Chris@16 434 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8, typename Context>
Chris@16 435 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8, Context)>
Chris@16 436 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const& , A8 const&, Context)>
Chris@16 437 {};
Chris@16 438 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8, typename Context>
Chris@16 439 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 & , A5 & , A6 & , A7 & , A8 &, Context)>
Chris@16 440 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
Chris@16 441 {};
Chris@16 442 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8, typename Context>
Chris@16 443 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>::type
Chris@16 444 operator()(
Chris@16 445 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
Chris@16 446 , Context const & ctx
Chris@16 447 ) const
Chris@16 448 {
Chris@16 449 return
Chris@16 450 (
Chris@16 451 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 452 ->*boost::phoenix::eval(a1, ctx)
Chris@16 453 )(
Chris@16 454 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx) , boost::phoenix::eval(a5, ctx) , boost::phoenix::eval(a6, ctx) , boost::phoenix::eval(a7, ctx) , boost::phoenix::eval(a8, ctx)
Chris@16 455 );
Chris@16 456 }
Chris@16 457
Chris@16 458
Chris@16 459
Chris@16 460
Chris@16 461
Chris@16 462
Chris@16 463
Chris@16 464
Chris@16 465 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9, typename Context>
Chris@16 466 struct result<This(A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9, Context)>
Chris@16 467 : result<This(A0 const& , A1 const& , A2 const& , A3 const& , A4 const& , A5 const& , A6 const& , A7 const& , A8 const& , A9 const&, Context)>
Chris@16 468 {};
Chris@16 469 template <typename This, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9, typename Context>
Chris@16 470 struct result<This(A0 & , A1 & , A2 & , A3 & , A4 & , A5 & , A6 & , A7 & , A8 & , A9 &, Context)>
Chris@16 471 : result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
Chris@16 472 {};
Chris@16 473 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9, typename Context>
Chris@16 474 typename result_of::mem_fun_ptr_eval<Context, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>::type
Chris@16 475 operator()(
Chris@16 476 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
Chris@16 477 , Context const & ctx
Chris@16 478 ) const
Chris@16 479 {
Chris@16 480 return
Chris@16 481 (
Chris@16 482 get_pointer(boost::phoenix::eval(a0, ctx))
Chris@16 483 ->*boost::phoenix::eval(a1, ctx)
Chris@16 484 )(
Chris@16 485 boost::phoenix::eval(a2, ctx) , boost::phoenix::eval(a3, ctx) , boost::phoenix::eval(a4, ctx) , boost::phoenix::eval(a5, ctx) , boost::phoenix::eval(a6, ctx) , boost::phoenix::eval(a7, ctx) , boost::phoenix::eval(a8, ctx) , boost::phoenix::eval(a9, ctx)
Chris@16 486 );
Chris@16 487 }
Chris@16 488
Chris@16 489 };
Chris@16 490 template <typename Dummy>
Chris@16 491 struct default_actions::when<rule::mem_fun_ptr, Dummy>
Chris@16 492 : call<mem_fun_ptr_eval>
Chris@16 493 {};
Chris@16 494 }}