Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/spirit/home/support/make_component.hpp @ 101:c530137014c0
Update Boost headers (1.58.0)
author | Chris Cannam |
---|---|
date | Mon, 07 Sep 2015 11:12:49 +0100 |
parents | 2665513ce2d3 |
children |
comparison
equal
deleted
inserted
replaced
100:793467b5e61c | 101:c530137014c0 |
---|---|
256 struct impl : proto::transform_impl<Expr, State, Data> | 256 struct impl : proto::transform_impl<Expr, State, Data> |
257 { | 257 { |
258 typedef typename | 258 typedef typename |
259 proto::reverse_fold_tree< | 259 proto::reverse_fold_tree< |
260 proto::_ | 260 proto::_ |
261 , proto::make<fusion::nil> | 261 , proto::make<fusion::nil_> |
262 , make_binary_helper<Grammar> | 262 , make_binary_helper<Grammar> |
263 >::template impl<Expr, State, Data> | 263 >::template impl<Expr, State, Data> |
264 reverse_fold_tree; | 264 reverse_fold_tree; |
265 | 265 |
266 typedef typename reverse_fold_tree::result_type elements; | 266 typedef typename reverse_fold_tree::result_type elements; |
360 , State | 360 , State |
361 , Data | 361 , Data |
362 )>::type | 362 )>::type |
363 lhs_component; | 363 lhs_component; |
364 | 364 |
365 #ifndef BOOST_SPIRIT_USE_PHOENIX_V3 | |
366 typedef typename | |
367 proto::result_of::value< | |
368 typename proto::result_of::child_c<Expr, 1>::type | |
369 >::type | |
370 rhs_component; | |
371 #else | |
372 typedef | 365 typedef |
373 typename mpl::eval_if_c< | 366 typename mpl::eval_if_c< |
374 phoenix::is_actor< | 367 phoenix::is_actor< |
375 typename proto::result_of::child_c<Expr, 1>::type | 368 typename proto::result_of::child_c<Expr, 1>::type |
376 >::type::value | 369 >::type::value |
378 , proto::result_of::value< | 371 , proto::result_of::value< |
379 typename proto::result_of::child_c<Expr, 1>::type | 372 typename proto::result_of::child_c<Expr, 1>::type |
380 > | 373 > |
381 >::type | 374 >::type |
382 rhs_component; | 375 rhs_component; |
383 #endif | |
384 | 376 |
385 typedef typename | 377 typedef typename |
386 result_of::make_cons< | 378 result_of::make_cons< |
387 lhs_component | 379 lhs_component |
388 , typename result_of::make_cons<rhs_component>::type | 380 , typename result_of::make_cons<rhs_component>::type |
394 typedef typename | 386 typedef typename |
395 make_component_::template | 387 make_component_::template |
396 result<make_component_(elements_type, Data)>::type | 388 result<make_component_(elements_type, Data)>::type |
397 result_type; | 389 result_type; |
398 | 390 |
399 #ifndef BOOST_SPIRIT_USE_PHOENIX_V3 | |
400 result_type operator()( | |
401 typename impl::expr_param expr | |
402 , typename impl::state_param state | |
403 , typename impl::data_param data | |
404 ) const | |
405 { | |
406 elements_type elements = | |
407 detail::make_cons( | |
408 Grammar()( | |
409 proto::child_c<0>(expr), state, data) // LHS | |
410 , detail::make_cons( | |
411 proto::value(proto::child_c<1>(expr))) // RHS | |
412 ); | |
413 | |
414 return make_component_()(elements, data); | |
415 } | |
416 #else | |
417 result_type operator()( | 391 result_type operator()( |
418 typename impl::expr_param expr | 392 typename impl::expr_param expr |
419 , typename impl::state_param state | 393 , typename impl::state_param state |
420 , typename impl::data_param data | 394 , typename impl::data_param data |
421 ) const | 395 ) const |
464 proto::child_c<1>(expr)) // RHS | 438 proto::child_c<1>(expr)) // RHS |
465 ); | 439 ); |
466 | 440 |
467 return make_component_()(elements, data); | 441 return make_component_()(elements, data); |
468 } | 442 } |
443 }; | |
444 }; | |
445 }}} | |
446 | |
469 #endif | 447 #endif |
470 }; | |
471 }; | |
472 }}} | |
473 | |
474 #endif |