246 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			246 lines
		
	
	
		
			7.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*==============================================================================
 | |
|     Copyright (c) 2005-2010 Joel de Guzman
 | |
|     Copyright (c) 2010 Thomas Heller
 | |
| 
 | |
|     Distributed under the Boost Software License, Version 1.0. (See accompanying
 | |
|     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 | |
| ==============================================================================*/
 | |
|         template <typename Expr
 | |
|             , 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
 | |
|             , typename Dummy = void>
 | |
|         struct actor;
 | |
|         template <typename Expr>
 | |
|         struct nullary_actor_result
 | |
|         {
 | |
|             typedef
 | |
|                 typename boost::phoenix::evaluator::impl<
 | |
|                     Expr const&
 | |
|                   , vector2<
 | |
|                         vector1<const ::boost::phoenix::actor<Expr> *> &
 | |
|                       , default_actions
 | |
|                     > const &
 | |
|                   , proto::empty_env
 | |
|                 >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0>
 | |
|         struct actor<Expr, A0>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector2<const ::boost::phoenix::actor<Expr> *, A0> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1>
 | |
|         struct actor<Expr, A0 , A1>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector3<const ::boost::phoenix::actor<Expr> *, A0 , A1> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2>
 | |
|         struct actor<Expr, A0 , A1 , A2>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector4<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector5<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector6<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4 , A5>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector7<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4 , A5> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4 , A5 , A6>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector8<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4 , A5 , A6> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector9<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector10<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|     
 | |
|         template <typename Expr, typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
 | |
|         struct actor<Expr, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
 | |
|         {
 | |
|             typedef
 | |
|                 typename phoenix::evaluator::
 | |
|                     impl<
 | |
|                         Expr const&
 | |
|                       , vector2<
 | |
|                             vector11<const ::boost::phoenix::actor<Expr> *, A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> &
 | |
|                           , default_actions
 | |
|                         > const &
 | |
|                       , proto::empty_env
 | |
|                     >::result_type
 | |
|                 type;
 | |
|         };
 | 
