48 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*==============================================================================
 | |
|     Copyright (c) 2016 Kohei Takahashi
 | |
| 
 | |
|     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... A>
 | |
|         BOOST_PHOENIX_SCOPE_ACTOR_GEN_NAME<
 | |
|             typename vector_chooser<sizeof...(A)>::template apply<
 | |
|                 typename proto::detail::uncvref<
 | |
|                     typename proto::result_of::child_c<A, 1>::type
 | |
|                 >::type...
 | |
|             >::type
 | |
|           , detail::map_local_index_to_tuple<
 | |
|                 typename proto::detail::uncvref<
 | |
|                     typename proto::result_of::value<
 | |
|                         typename proto::result_of::child_c<A, 0>::type
 | |
|                     >::type
 | |
|                 >::type...
 | |
|             >
 | |
|         >
 | |
|         BOOST_PHOENIX_SCOPE_ACTOR_GEN_FUNCTION(A const&... a) BOOST_PHOENIX_SCOPE_ACTOR_GEN_CONST
 | |
|         {
 | |
|             typedef
 | |
|                 typename vector_chooser<sizeof...(A)>::template apply<
 | |
|                     typename proto::detail::uncvref<
 | |
|                         typename proto::result_of::child_c<A, 1>::type
 | |
|                     >::type...
 | |
|                 >::type
 | |
|             locals_type;
 | |
| 
 | |
|             locals_type locals = {proto::child_c<1>(a)...};
 | |
| 
 | |
|             return
 | |
|                 BOOST_PHOENIX_SCOPE_ACTOR_GEN_NAME<
 | |
|                     locals_type
 | |
|                   , detail::map_local_index_to_tuple<
 | |
|                         typename proto::detail::uncvref<
 | |
|                             typename proto::result_of::value<
 | |
|                                 typename proto::result_of::child_c<A, 0>::type
 | |
|                             >::type
 | |
|                         >::type...
 | |
|                     >
 | |
|                 >(locals);
 | |
|         }
 | |
| 
 | 
