1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- /*==============================================================================
- 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);
- }
|