summaryrefslogtreecommitdiff
path: root/boost/fusion/container/map/detail/cpp03
diff options
context:
space:
mode:
Diffstat (limited to 'boost/fusion/container/map/detail/cpp03')
-rw-r--r--boost/fusion/container/map/detail/cpp03/as_map.hpp136
-rw-r--r--boost/fusion/container/map/detail/cpp03/at_impl.hpp64
-rw-r--r--boost/fusion/container/map/detail/cpp03/begin_impl.hpp45
-rw-r--r--boost/fusion/container/map/detail/cpp03/convert.hpp57
-rw-r--r--boost/fusion/container/map/detail/cpp03/convert_impl.hpp54
-rw-r--r--boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp49
-rw-r--r--boost/fusion/container/map/detail/cpp03/deref_impl.hpp47
-rw-r--r--boost/fusion/container/map/detail/cpp03/end_impl.hpp45
-rw-r--r--boost/fusion/container/map/detail/cpp03/key_of_impl.hpp33
-rw-r--r--boost/fusion/container/map/detail/cpp03/limits.hpp28
-rw-r--r--boost/fusion/container/map/detail/cpp03/map.hpp111
-rw-r--r--boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp39
-rw-r--r--boost/fusion/container/map/detail/cpp03/map_fwd.hpp53
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp22
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp221
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp431
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp641
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp851
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp1061
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp22
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp82
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp18
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp112
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp18
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp142
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp18
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp172
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp18
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp202
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp18
-rw-r--r--boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp22
-rw-r--r--boost/fusion/container/map/detail/cpp03/value_at_impl.hpp35
-rw-r--r--boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp33
-rw-r--r--boost/fusion/container/map/detail/cpp03/value_of_impl.hpp40
34 files changed, 4940 insertions, 0 deletions
diff --git a/boost/fusion/container/map/detail/cpp03/as_map.hpp b/boost/fusion/container/map/detail/cpp03/as_map.hpp
new file mode 100644
index 0000000000..62748be143
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/as_map.hpp
@@ -0,0 +1,136 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#ifndef BOOST_PP_IS_ITERATING
+#if !defined(FUSION_AS_MAP_0932005_1339)
+#define FUSION_AS_MAP_0932005_1339
+
+#include <boost/preprocessor/iterate.hpp>
+#include <boost/preprocessor/repetition/enum_params.hpp>
+#include <boost/preprocessor/repetition/enum_binary_params.hpp>
+#include <boost/preprocessor/repetition/repeat.hpp>
+#include <boost/preprocessor/cat.hpp>
+#include <boost/preprocessor/inc.hpp>
+#include <boost/preprocessor/dec.hpp>
+#include <boost/fusion/container/map/detail/cpp03/map.hpp>
+#include <boost/fusion/iterator/value_of.hpp>
+#include <boost/fusion/iterator/deref.hpp>
+#include <boost/fusion/iterator/next.hpp>
+
+namespace boost { namespace fusion { namespace detail
+{
+ template <int size, bool is_assoc>
+ struct as_map;
+
+ template <bool is_assoc>
+ struct as_map<0, is_assoc>
+ {
+ template <typename Iterator>
+ struct apply
+ {
+ typedef map<> type;
+ };
+
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator)
+ {
+ return map<>();
+ }
+ };
+}}}
+
+#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES)
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp>
+#else
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 2, line: 0, output: "preprocessed/as_map" FUSION_MAX_MAP_SIZE_STR ".hpp")
+#endif
+
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 1)
+#endif
+
+namespace boost { namespace fusion { namespace detail
+{
+#define BOOST_FUSION_NEXT_ITERATOR(z, n, data) \
+ typedef typename fusion::result_of::next<BOOST_PP_CAT(I, n)>::type \
+ BOOST_PP_CAT(I, BOOST_PP_INC(n));
+
+#define BOOST_FUSION_NEXT_CALL_ITERATOR(z, n, data) \
+ typename gen::BOOST_PP_CAT(I, BOOST_PP_INC(n)) \
+ BOOST_PP_CAT(i, BOOST_PP_INC(n)) = fusion::next(BOOST_PP_CAT(i, n));
+
+#define BOOST_FUSION_PAIR_FROM_ITERATOR(z, n, data) \
+ typedef pair_from<BOOST_PP_CAT(I, n), is_assoc> BOOST_PP_CAT(D, n); \
+ typedef typename BOOST_PP_CAT(D, n)::type BOOST_PP_CAT(T, n);
+
+#define BOOST_FUSION_DREF_CALL_ITERATOR(z, n, data) \
+ gen::BOOST_PP_CAT(D, n)::call(BOOST_PP_CAT(i, n))
+
+#define BOOST_PP_FILENAME_1 <boost/fusion/container/map/detail/cpp03/as_map.hpp>
+#define BOOST_PP_ITERATION_LIMITS (1, FUSION_MAX_MAP_SIZE)
+#include BOOST_PP_ITERATE()
+
+#undef BOOST_FUSION_NEXT_ITERATOR
+#undef BOOST_FUSION_NEXT_CALL_ITERATOR
+#undef BOOST_FUSION_PAIR_FROM_ITERATOR
+#undef BOOST_FUSION_DREF_CALL_ITERATOR
+
+}}}
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(output: null)
+#endif
+
+#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES
+
+#endif
+#else // defined(BOOST_PP_IS_ITERATING)
+///////////////////////////////////////////////////////////////////////////////
+//
+// Preprocessor vertical repetition code
+//
+///////////////////////////////////////////////////////////////////////////////
+
+#define N BOOST_PP_ITERATION()
+
+ template <bool is_assoc>
+ struct as_map<N, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ BOOST_PP_REPEAT(BOOST_PP_DEC(N), BOOST_FUSION_NEXT_ITERATOR, _)
+ BOOST_PP_REPEAT(N, BOOST_FUSION_PAIR_FROM_ITERATOR, _)
+ typedef map<BOOST_PP_ENUM_PARAMS(N, T)> type;
+ };
+
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ BOOST_PP_REPEAT(BOOST_PP_DEC(N), BOOST_FUSION_NEXT_CALL_ITERATOR, _)
+ return result(BOOST_PP_ENUM(N, BOOST_FUSION_DREF_CALL_ITERATOR, _));
+ }
+ };
+
+#undef N
+#endif // defined(BOOST_PP_IS_ITERATING)
+
diff --git a/boost/fusion/container/map/detail/cpp03/at_impl.hpp b/boost/fusion/container/map/detail/cpp03/at_impl.hpp
new file mode 100644
index 0000000000..8a3209d75a
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/at_impl.hpp
@@ -0,0 +1,64 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+ Copyright (c) 2011 Brandon Kohn
+
+ 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)
+==============================================================================*/
+#if !defined(BOOST_FUSION_MAP_DETAIL_AT_IMPL_HPP)
+#define BOOST_FUSION_MAP_DETAIL_AT_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/support/detail/access.hpp>
+#include <boost/type_traits/is_const.hpp>
+#include <boost/mpl/at.hpp>
+#include <boost/mpl/int.hpp>
+
+namespace boost { namespace fusion
+{
+ struct map_tag;
+
+ namespace extension
+ {
+ template <typename Tag>
+ struct at_impl;
+
+ template <>
+ struct at_impl<map_tag>
+ {
+ template <typename Sequence, typename N>
+ struct apply
+ {
+ typedef typename
+ mpl::at<typename Sequence::storage_type::types, N>::type
+ element;
+ typedef typename detail::ref_result<element>::type type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(Sequence& m)
+ {
+ return m.get_data().at_impl(N());
+ }
+ };
+
+ template <typename Sequence, typename N>
+ struct apply<Sequence const, N>
+ {
+ typedef typename
+ mpl::at<typename Sequence::storage_type::types, N>::type
+ element;
+ typedef typename detail::cref_result<element>::type type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(Sequence const& m)
+ {
+ return m.get_data().at_impl(N());
+ }
+ };
+ };
+ }
+}}
+
+#endif //BOOST_FUSION_MAP_DETAIL_AT_IMPL_HPP
diff --git a/boost/fusion/container/map/detail/cpp03/begin_impl.hpp b/boost/fusion/container/map/detail/cpp03/begin_impl.hpp
new file mode 100644
index 0000000000..5fe1466e18
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/begin_impl.hpp
@@ -0,0 +1,45 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_BEGIN_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_BEGIN_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/iterator/basic_iterator.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct begin_impl;
+
+ template <>
+ struct begin_impl<map_tag>
+ {
+ template <typename Seq>
+ struct apply
+ {
+ typedef
+ basic_iterator<
+ map_iterator_tag
+ , typename Seq::category
+ , Seq
+ , 0
+ >
+ type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(Seq& seq)
+ {
+ return type(seq,0);
+ }
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/convert.hpp b/boost/fusion/container/map/detail/cpp03/convert.hpp
new file mode 100644
index 0000000000..a03840ce13
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/convert.hpp
@@ -0,0 +1,57 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#if !defined(FUSION_CONVERT_09232005_1340)
+#define FUSION_CONVERT_09232005_1340
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/map/detail/cpp03/as_map.hpp>
+#include <boost/fusion/container/map/detail/cpp03/convert_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/map.hpp>
+#include <boost/fusion/sequence/intrinsic/begin.hpp>
+#include <boost/fusion/sequence/intrinsic/size.hpp>
+
+namespace boost { namespace fusion
+{
+ namespace result_of
+ {
+ template <typename Sequence>
+ struct as_map
+ {
+ typedef typename
+ detail::as_map<
+ result_of::size<Sequence>::value
+ , is_base_of<
+ associative_tag
+ , typename traits::category_of<Sequence>::type>::value
+ >
+ gen;
+ typedef typename gen::
+ template apply<typename result_of::begin<Sequence>::type>::type
+ type;
+ };
+ }
+
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ inline typename result_of::as_map<Sequence>::type
+ as_map(Sequence& seq)
+ {
+ typedef typename result_of::as_map<Sequence>::gen gen;
+ return gen::call(fusion::begin(seq));
+ }
+
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ inline typename result_of::as_map<Sequence const>::type
+ as_map(Sequence const& seq)
+ {
+ typedef typename result_of::as_map<Sequence const>::gen gen;
+ return gen::call(fusion::begin(seq));
+ }
+}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/convert_impl.hpp b/boost/fusion/container/map/detail/cpp03/convert_impl.hpp
new file mode 100644
index 0000000000..14a821e879
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/convert_impl.hpp
@@ -0,0 +1,54 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+ Copyright (c) 2005-2006 Dan Marsden
+
+ 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)
+==============================================================================*/
+#if !defined(FUSION_CONVERT_IMPL_09232005_1340)
+#define FUSION_CONVERT_IMPL_09232005_1340
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/map/detail/cpp03/as_map.hpp>
+#include <boost/fusion/container/map/detail/cpp03/map.hpp>
+#include <boost/fusion/sequence/intrinsic/begin.hpp>
+#include <boost/fusion/sequence/intrinsic/size.hpp>
+
+namespace boost { namespace fusion
+{
+ struct map_tag;
+
+ namespace extension
+ {
+ template <typename T>
+ struct convert_impl;
+
+ template <>
+ struct convert_impl<map_tag>
+ {
+ template <typename Sequence>
+ struct apply
+ {
+ typedef typename
+ detail::as_map<
+ result_of::size<Sequence>::value
+ , is_base_of<
+ associative_tag
+ , typename traits::category_of<Sequence>::type>::value
+ >
+ gen;
+ typedef typename gen::
+ template apply<typename result_of::begin<Sequence>::type>::type
+ type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type call(Sequence& seq)
+ {
+ return gen::call(fusion::begin(seq));
+ }
+ };
+ };
+ }
+}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp b/boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp
new file mode 100644
index 0000000000..7be6fd962a
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp
@@ -0,0 +1,49 @@
+/*=============================================================================
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_DEREF_DATA_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_DEREF_DATA_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/iterator/value_of.hpp>
+#include <boost/fusion/iterator/deref.hpp>
+#include <boost/fusion/support/detail/access.hpp>
+#include <boost/type_traits/is_const.hpp>
+#include <boost/mpl/if.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct deref_data_impl;
+
+ template <>
+ struct deref_data_impl<map_iterator_tag>
+ {
+ template <typename It>
+ struct apply
+ {
+ typedef typename result_of::value_of<It>::type::second_type data;
+
+ typedef typename
+ mpl::if_<
+ is_const<typename It::seq_type>
+ , typename detail::cref_result<data>::type
+ , typename detail::ref_result<data>::type
+ >::type
+ type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(It const& it)
+ {
+ return fusion::deref(it).second;
+ }
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/deref_impl.hpp b/boost/fusion/container/map/detail/cpp03/deref_impl.hpp
new file mode 100644
index 0000000000..260c5dfddd
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/deref_impl.hpp
@@ -0,0 +1,47 @@
+/*=============================================================================
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_DEREF_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_DEREF_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/sequence/intrinsic/at.hpp>
+#include <boost/type_traits/is_const.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct deref_impl;
+
+ template <>
+ struct deref_impl<map_iterator_tag>
+ {
+ template <typename It>
+ struct apply
+ {
+ typedef typename
+ result_of::at<
+ typename mpl::if_<
+ is_const<typename It::seq_type>
+ , typename It::seq_type::storage_type const
+ , typename It::seq_type::storage_type
+ >::type
+ , typename It::index
+ >::type
+ type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(It const& it)
+ {
+ return fusion::at<typename It::index>(it.seq->get_data());
+ }
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/end_impl.hpp b/boost/fusion/container/map/detail/cpp03/end_impl.hpp
new file mode 100644
index 0000000000..33940c7a7e
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/end_impl.hpp
@@ -0,0 +1,45 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_END_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_END_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/iterator/basic_iterator.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct end_impl;
+
+ template <>
+ struct end_impl<map_tag>
+ {
+ template <typename Seq>
+ struct apply
+ {
+ typedef
+ basic_iterator<
+ map_iterator_tag
+ , typename Seq::category
+ , Seq
+ , Seq::size::value
+ >
+ type;
+
+ BOOST_FUSION_GPU_ENABLED
+ static type
+ call(Seq& seq)
+ {
+ return type(seq,0);
+ }
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/key_of_impl.hpp b/boost/fusion/container/map/detail/cpp03/key_of_impl.hpp
new file mode 100644
index 0000000000..db3b4fff0e
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/key_of_impl.hpp
@@ -0,0 +1,33 @@
+/*=============================================================================
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_KEY_OF_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_KEY_OF_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/map/detail/cpp03/value_of_impl.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct key_of_impl;
+
+ template <>
+ struct key_of_impl<map_iterator_tag>
+ {
+ template <typename It>
+ struct apply
+ {
+ typedef typename
+ value_of_impl<map_iterator_tag>::
+ template apply<It>::type::first_type
+ type;
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/limits.hpp b/boost/fusion/container/map/detail/cpp03/limits.hpp
new file mode 100644
index 0000000000..43b5abb261
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/limits.hpp
@@ -0,0 +1,28 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#if !defined(FUSION_MAP_LIMITS_07212005_1104)
+#define FUSION_MAP_LIMITS_07212005_1104
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/vector/limits.hpp>
+
+#if !defined(FUSION_MAX_MAP_SIZE)
+# define FUSION_MAX_MAP_SIZE FUSION_MAX_VECTOR_SIZE
+#else
+# if FUSION_MAX_MAP_SIZE < 3
+# undef FUSION_MAX_MAP_SIZE
+# if (FUSION_MAX_VECTOR_SIZE > 10)
+# define FUSION_MAX_MAP_SIZE 10
+# else
+# define FUSION_MAX_MAP_SIZE FUSION_MAX_VECTOR_SIZE
+# endif
+# endif
+#endif
+
+#define FUSION_MAX_MAP_SIZE_STR BOOST_PP_STRINGIZE(BOOST_FUSION_PP_ROUND_UP(FUSION_MAX_MAP_SIZE))
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/map.hpp b/boost/fusion/container/map/detail/cpp03/map.hpp
new file mode 100644
index 0000000000..8673895ea8
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/map.hpp
@@ -0,0 +1,111 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#if !defined(FUSION_MAP_07212005_1106)
+#define FUSION_MAP_07212005_1106
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/support/pair.hpp>
+#include <boost/fusion/support/category_of.hpp>
+#include <boost/fusion/support/detail/access.hpp>
+#include <boost/fusion/container/map/detail/cpp03/map_fwd.hpp>
+#include <boost/fusion/container/map/detail/cpp03/at_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/value_at_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/begin_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/end_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/value_of_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/deref_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/key_of_impl.hpp>
+#include <boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp>
+#include <boost/fusion/container/vector/vector.hpp>
+#include <boost/mpl/identity.hpp>
+#include <boost/mpl/bool.hpp>
+
+#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES)
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp>
+#else
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 2, line: 0, output: "preprocessed/map" FUSION_MAX_MAP_SIZE_STR ".hpp")
+#endif
+
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 1)
+#endif
+
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+
+ template <BOOST_PP_ENUM_PARAMS(FUSION_MAX_MAP_SIZE, typename T)>
+ struct map : sequence_base<map<BOOST_PP_ENUM_PARAMS(FUSION_MAX_MAP_SIZE, T)> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag; // this gets picked up by MPL
+ typedef mpl::false_ is_view;
+
+ typedef vector<
+ BOOST_PP_ENUM_PARAMS(FUSION_MAX_MAP_SIZE, T)>
+ storage_type;
+
+ typedef typename storage_type::size size;
+
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+
+ #include <boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp>
+
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+
+ private:
+
+ storage_type data;
+ };
+}}
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(output: null)
+#endif
+
+#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp b/boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp
new file mode 100644
index 0000000000..ac303788e2
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp
@@ -0,0 +1,39 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#ifndef BOOST_PP_IS_ITERATING
+#if !defined(FUSION_MAP_FORWARD_CTOR_07222005_0106)
+#define FUSION_MAP_FORWARD_CTOR_07222005_0106
+
+#include <boost/preprocessor/iterate.hpp>
+#include <boost/preprocessor/repetition/enum_params.hpp>
+#include <boost/preprocessor/repetition/enum_binary_params.hpp>
+
+#define BOOST_PP_FILENAME_1 \
+ <boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp>
+#define BOOST_PP_ITERATION_LIMITS (1, FUSION_MAX_MAP_SIZE)
+#include BOOST_PP_ITERATE()
+
+#endif
+#else // defined(BOOST_PP_IS_ITERATING)
+///////////////////////////////////////////////////////////////////////////////
+//
+// Preprocessor vertical repetition code
+//
+///////////////////////////////////////////////////////////////////////////////
+
+#define N BOOST_PP_ITERATION()
+
+ BOOST_FUSION_GPU_ENABLED
+#if N == 1
+ explicit
+#endif
+ map(BOOST_PP_ENUM_BINARY_PARAMS(N, T, const& _))
+ : data(BOOST_PP_ENUM_PARAMS(N, _)) {}
+
+#undef N
+#endif // defined(BOOST_PP_IS_ITERATING)
+
diff --git a/boost/fusion/container/map/detail/cpp03/map_fwd.hpp b/boost/fusion/container/map/detail/cpp03/map_fwd.hpp
new file mode 100644
index 0000000000..cf26fdddc3
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/map_fwd.hpp
@@ -0,0 +1,53 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+==============================================================================*/
+#if !defined(FUSION_MAP_FORWARD_07212005_1105)
+#define FUSION_MAP_FORWARD_07212005_1105
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/map/detail/cpp03/limits.hpp>
+#include <boost/preprocessor/repetition/enum_params_with_a_default.hpp>
+
+#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES)
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp>
+#else
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 2, line: 0, output: "preprocessed/map" FUSION_MAX_MAP_SIZE_STR "_fwd.hpp")
+#endif
+
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(preserve: 1)
+#endif
+
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+
+ template <
+ BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(
+ FUSION_MAX_MAP_SIZE, typename T, void_)
+ >
+ struct map;
+}}
+
+#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
+#pragma wave option(output: null)
+#endif
+
+#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp
new file mode 100644
index 0000000000..1d1be0804d
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp
@@ -0,0 +1,22 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if FUSION_MAX_MAP_SIZE <= 10
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 20
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 30
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 40
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 50
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp>
+#else
+#error "FUSION_MAX_MAP_SIZE out of bounds for preprocessed headers"
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp
new file mode 100644
index 0000000000..c5273214f6
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp
@@ -0,0 +1,221 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion { namespace detail
+{
+ template <bool is_assoc>
+ struct as_map<1, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0;
+ typedef map<T0> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+
+ return result(gen::D0::call(i0));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<2, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1;
+ typedef map<T0 , T1> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0);
+ return result(gen::D0::call(i0) , gen::D1::call(i1));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<3, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2;
+ typedef map<T0 , T1 , T2> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<4, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3;
+ typedef map<T0 , T1 , T2 , T3> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<5, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4;
+ typedef map<T0 , T1 , T2 , T3 , T4> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<6, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<7, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<8, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<9, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<10, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9));
+ }
+ };
+}}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp
new file mode 100644
index 0000000000..b62cf67526
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp
@@ -0,0 +1,431 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion { namespace detail
+{
+ template <bool is_assoc>
+ struct as_map<1, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0;
+ typedef map<T0> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+
+ return result(gen::D0::call(i0));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<2, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1;
+ typedef map<T0 , T1> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0);
+ return result(gen::D0::call(i0) , gen::D1::call(i1));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<3, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2;
+ typedef map<T0 , T1 , T2> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<4, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3;
+ typedef map<T0 , T1 , T2 , T3> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<5, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4;
+ typedef map<T0 , T1 , T2 , T3 , T4> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<6, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<7, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<8, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<9, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<10, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<11, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<12, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<13, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<14, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<15, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<16, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<17, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<18, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<19, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<20, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19));
+ }
+ };
+}}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp
new file mode 100644
index 0000000000..bb2c6d539a
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp
@@ -0,0 +1,641 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion { namespace detail
+{
+ template <bool is_assoc>
+ struct as_map<1, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0;
+ typedef map<T0> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+
+ return result(gen::D0::call(i0));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<2, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1;
+ typedef map<T0 , T1> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0);
+ return result(gen::D0::call(i0) , gen::D1::call(i1));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<3, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2;
+ typedef map<T0 , T1 , T2> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<4, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3;
+ typedef map<T0 , T1 , T2 , T3> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<5, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4;
+ typedef map<T0 , T1 , T2 , T3 , T4> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<6, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<7, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<8, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<9, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<10, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<11, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<12, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<13, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<14, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<15, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<16, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<17, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<18, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<19, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<20, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<21, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<22, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<23, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<24, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<25, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<26, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<27, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<28, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<29, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<30, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29));
+ }
+ };
+}}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp
new file mode 100644
index 0000000000..1c4d7c60a9
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp
@@ -0,0 +1,851 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion { namespace detail
+{
+ template <bool is_assoc>
+ struct as_map<1, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0;
+ typedef map<T0> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+
+ return result(gen::D0::call(i0));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<2, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1;
+ typedef map<T0 , T1> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0);
+ return result(gen::D0::call(i0) , gen::D1::call(i1));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<3, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2;
+ typedef map<T0 , T1 , T2> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<4, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3;
+ typedef map<T0 , T1 , T2 , T3> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<5, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4;
+ typedef map<T0 , T1 , T2 , T3 , T4> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<6, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<7, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<8, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<9, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<10, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<11, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<12, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<13, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<14, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<15, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<16, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<17, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<18, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<19, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<20, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<21, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<22, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<23, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<24, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<25, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<26, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<27, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<28, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<29, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<30, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<31, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<32, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<33, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<34, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<35, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<36, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<37, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<38, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<39, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<40, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39));
+ }
+ };
+}}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp
new file mode 100644
index 0000000000..e9cec05b5c
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp
@@ -0,0 +1,1061 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion { namespace detail
+{
+ template <bool is_assoc>
+ struct as_map<1, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0;
+ typedef map<T0> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+
+ return result(gen::D0::call(i0));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<2, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1;
+ typedef map<T0 , T1> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0);
+ return result(gen::D0::call(i0) , gen::D1::call(i1));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<3, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2;
+ typedef map<T0 , T1 , T2> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<4, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3;
+ typedef map<T0 , T1 , T2 , T3> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<5, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4;
+ typedef map<T0 , T1 , T2 , T3 , T4> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<6, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<7, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<8, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<9, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<10, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<11, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<12, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<13, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<14, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<15, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<16, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<17, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<18, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<19, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<20, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<21, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<22, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<23, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<24, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<25, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<26, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<27, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<28, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<29, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<30, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<31, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<32, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<33, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<34, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<35, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<36, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<37, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<38, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<39, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<40, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<41, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<42, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<43, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<44, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<45, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<46, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44; typedef typename fusion::result_of::next<I44>::type I45;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44; typedef pair_from<I45, is_assoc> D45; typedef typename D45::type T45;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43); typename gen::I45 i45 = fusion::next(i44);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44) , gen::D45::call(i45));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<47, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44; typedef typename fusion::result_of::next<I44>::type I45; typedef typename fusion::result_of::next<I45>::type I46;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44; typedef pair_from<I45, is_assoc> D45; typedef typename D45::type T45; typedef pair_from<I46, is_assoc> D46; typedef typename D46::type T46;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43); typename gen::I45 i45 = fusion::next(i44); typename gen::I46 i46 = fusion::next(i45);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44) , gen::D45::call(i45) , gen::D46::call(i46));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<48, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44; typedef typename fusion::result_of::next<I44>::type I45; typedef typename fusion::result_of::next<I45>::type I46; typedef typename fusion::result_of::next<I46>::type I47;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44; typedef pair_from<I45, is_assoc> D45; typedef typename D45::type T45; typedef pair_from<I46, is_assoc> D46; typedef typename D46::type T46; typedef pair_from<I47, is_assoc> D47; typedef typename D47::type T47;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46 , T47> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43); typename gen::I45 i45 = fusion::next(i44); typename gen::I46 i46 = fusion::next(i45); typename gen::I47 i47 = fusion::next(i46);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44) , gen::D45::call(i45) , gen::D46::call(i46) , gen::D47::call(i47));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<49, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44; typedef typename fusion::result_of::next<I44>::type I45; typedef typename fusion::result_of::next<I45>::type I46; typedef typename fusion::result_of::next<I46>::type I47; typedef typename fusion::result_of::next<I47>::type I48;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44; typedef pair_from<I45, is_assoc> D45; typedef typename D45::type T45; typedef pair_from<I46, is_assoc> D46; typedef typename D46::type T46; typedef pair_from<I47, is_assoc> D47; typedef typename D47::type T47; typedef pair_from<I48, is_assoc> D48; typedef typename D48::type T48;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46 , T47 , T48> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43); typename gen::I45 i45 = fusion::next(i44); typename gen::I46 i46 = fusion::next(i45); typename gen::I47 i47 = fusion::next(i46); typename gen::I48 i48 = fusion::next(i47);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44) , gen::D45::call(i45) , gen::D46::call(i46) , gen::D47::call(i47) , gen::D48::call(i48));
+ }
+ };
+ template <bool is_assoc>
+ struct as_map<50, is_assoc>
+ {
+ template <typename I0>
+ struct apply
+ {
+ typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; typedef typename fusion::result_of::next<I10>::type I11; typedef typename fusion::result_of::next<I11>::type I12; typedef typename fusion::result_of::next<I12>::type I13; typedef typename fusion::result_of::next<I13>::type I14; typedef typename fusion::result_of::next<I14>::type I15; typedef typename fusion::result_of::next<I15>::type I16; typedef typename fusion::result_of::next<I16>::type I17; typedef typename fusion::result_of::next<I17>::type I18; typedef typename fusion::result_of::next<I18>::type I19; typedef typename fusion::result_of::next<I19>::type I20; typedef typename fusion::result_of::next<I20>::type I21; typedef typename fusion::result_of::next<I21>::type I22; typedef typename fusion::result_of::next<I22>::type I23; typedef typename fusion::result_of::next<I23>::type I24; typedef typename fusion::result_of::next<I24>::type I25; typedef typename fusion::result_of::next<I25>::type I26; typedef typename fusion::result_of::next<I26>::type I27; typedef typename fusion::result_of::next<I27>::type I28; typedef typename fusion::result_of::next<I28>::type I29; typedef typename fusion::result_of::next<I29>::type I30; typedef typename fusion::result_of::next<I30>::type I31; typedef typename fusion::result_of::next<I31>::type I32; typedef typename fusion::result_of::next<I32>::type I33; typedef typename fusion::result_of::next<I33>::type I34; typedef typename fusion::result_of::next<I34>::type I35; typedef typename fusion::result_of::next<I35>::type I36; typedef typename fusion::result_of::next<I36>::type I37; typedef typename fusion::result_of::next<I37>::type I38; typedef typename fusion::result_of::next<I38>::type I39; typedef typename fusion::result_of::next<I39>::type I40; typedef typename fusion::result_of::next<I40>::type I41; typedef typename fusion::result_of::next<I41>::type I42; typedef typename fusion::result_of::next<I42>::type I43; typedef typename fusion::result_of::next<I43>::type I44; typedef typename fusion::result_of::next<I44>::type I45; typedef typename fusion::result_of::next<I45>::type I46; typedef typename fusion::result_of::next<I46>::type I47; typedef typename fusion::result_of::next<I47>::type I48; typedef typename fusion::result_of::next<I48>::type I49;
+ typedef pair_from<I0, is_assoc> D0; typedef typename D0::type T0; typedef pair_from<I1, is_assoc> D1; typedef typename D1::type T1; typedef pair_from<I2, is_assoc> D2; typedef typename D2::type T2; typedef pair_from<I3, is_assoc> D3; typedef typename D3::type T3; typedef pair_from<I4, is_assoc> D4; typedef typename D4::type T4; typedef pair_from<I5, is_assoc> D5; typedef typename D5::type T5; typedef pair_from<I6, is_assoc> D6; typedef typename D6::type T6; typedef pair_from<I7, is_assoc> D7; typedef typename D7::type T7; typedef pair_from<I8, is_assoc> D8; typedef typename D8::type T8; typedef pair_from<I9, is_assoc> D9; typedef typename D9::type T9; typedef pair_from<I10, is_assoc> D10; typedef typename D10::type T10; typedef pair_from<I11, is_assoc> D11; typedef typename D11::type T11; typedef pair_from<I12, is_assoc> D12; typedef typename D12::type T12; typedef pair_from<I13, is_assoc> D13; typedef typename D13::type T13; typedef pair_from<I14, is_assoc> D14; typedef typename D14::type T14; typedef pair_from<I15, is_assoc> D15; typedef typename D15::type T15; typedef pair_from<I16, is_assoc> D16; typedef typename D16::type T16; typedef pair_from<I17, is_assoc> D17; typedef typename D17::type T17; typedef pair_from<I18, is_assoc> D18; typedef typename D18::type T18; typedef pair_from<I19, is_assoc> D19; typedef typename D19::type T19; typedef pair_from<I20, is_assoc> D20; typedef typename D20::type T20; typedef pair_from<I21, is_assoc> D21; typedef typename D21::type T21; typedef pair_from<I22, is_assoc> D22; typedef typename D22::type T22; typedef pair_from<I23, is_assoc> D23; typedef typename D23::type T23; typedef pair_from<I24, is_assoc> D24; typedef typename D24::type T24; typedef pair_from<I25, is_assoc> D25; typedef typename D25::type T25; typedef pair_from<I26, is_assoc> D26; typedef typename D26::type T26; typedef pair_from<I27, is_assoc> D27; typedef typename D27::type T27; typedef pair_from<I28, is_assoc> D28; typedef typename D28::type T28; typedef pair_from<I29, is_assoc> D29; typedef typename D29::type T29; typedef pair_from<I30, is_assoc> D30; typedef typename D30::type T30; typedef pair_from<I31, is_assoc> D31; typedef typename D31::type T31; typedef pair_from<I32, is_assoc> D32; typedef typename D32::type T32; typedef pair_from<I33, is_assoc> D33; typedef typename D33::type T33; typedef pair_from<I34, is_assoc> D34; typedef typename D34::type T34; typedef pair_from<I35, is_assoc> D35; typedef typename D35::type T35; typedef pair_from<I36, is_assoc> D36; typedef typename D36::type T36; typedef pair_from<I37, is_assoc> D37; typedef typename D37::type T37; typedef pair_from<I38, is_assoc> D38; typedef typename D38::type T38; typedef pair_from<I39, is_assoc> D39; typedef typename D39::type T39; typedef pair_from<I40, is_assoc> D40; typedef typename D40::type T40; typedef pair_from<I41, is_assoc> D41; typedef typename D41::type T41; typedef pair_from<I42, is_assoc> D42; typedef typename D42::type T42; typedef pair_from<I43, is_assoc> D43; typedef typename D43::type T43; typedef pair_from<I44, is_assoc> D44; typedef typename D44::type T44; typedef pair_from<I45, is_assoc> D45; typedef typename D45::type T45; typedef pair_from<I46, is_assoc> D46; typedef typename D46::type T46; typedef pair_from<I47, is_assoc> D47; typedef typename D47::type T47; typedef pair_from<I48, is_assoc> D48; typedef typename D48::type T48; typedef pair_from<I49, is_assoc> D49; typedef typename D49::type T49;
+ typedef map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46 , T47 , T48 , T49> type;
+ };
+ template <typename Iterator>
+ BOOST_FUSION_GPU_ENABLED
+ static typename apply<Iterator>::type
+ call(Iterator const& i0)
+ {
+ typedef apply<Iterator> gen;
+ typedef typename gen::type result;
+ typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); typename gen::I10 i10 = fusion::next(i9); typename gen::I11 i11 = fusion::next(i10); typename gen::I12 i12 = fusion::next(i11); typename gen::I13 i13 = fusion::next(i12); typename gen::I14 i14 = fusion::next(i13); typename gen::I15 i15 = fusion::next(i14); typename gen::I16 i16 = fusion::next(i15); typename gen::I17 i17 = fusion::next(i16); typename gen::I18 i18 = fusion::next(i17); typename gen::I19 i19 = fusion::next(i18); typename gen::I20 i20 = fusion::next(i19); typename gen::I21 i21 = fusion::next(i20); typename gen::I22 i22 = fusion::next(i21); typename gen::I23 i23 = fusion::next(i22); typename gen::I24 i24 = fusion::next(i23); typename gen::I25 i25 = fusion::next(i24); typename gen::I26 i26 = fusion::next(i25); typename gen::I27 i27 = fusion::next(i26); typename gen::I28 i28 = fusion::next(i27); typename gen::I29 i29 = fusion::next(i28); typename gen::I30 i30 = fusion::next(i29); typename gen::I31 i31 = fusion::next(i30); typename gen::I32 i32 = fusion::next(i31); typename gen::I33 i33 = fusion::next(i32); typename gen::I34 i34 = fusion::next(i33); typename gen::I35 i35 = fusion::next(i34); typename gen::I36 i36 = fusion::next(i35); typename gen::I37 i37 = fusion::next(i36); typename gen::I38 i38 = fusion::next(i37); typename gen::I39 i39 = fusion::next(i38); typename gen::I40 i40 = fusion::next(i39); typename gen::I41 i41 = fusion::next(i40); typename gen::I42 i42 = fusion::next(i41); typename gen::I43 i43 = fusion::next(i42); typename gen::I44 i44 = fusion::next(i43); typename gen::I45 i45 = fusion::next(i44); typename gen::I46 i46 = fusion::next(i45); typename gen::I47 i47 = fusion::next(i46); typename gen::I48 i48 = fusion::next(i47); typename gen::I49 i49 = fusion::next(i48);
+ return result(gen::D0::call(i0) , gen::D1::call(i1) , gen::D2::call(i2) , gen::D3::call(i3) , gen::D4::call(i4) , gen::D5::call(i5) , gen::D6::call(i6) , gen::D7::call(i7) , gen::D8::call(i8) , gen::D9::call(i9) , gen::D10::call(i10) , gen::D11::call(i11) , gen::D12::call(i12) , gen::D13::call(i13) , gen::D14::call(i14) , gen::D15::call(i15) , gen::D16::call(i16) , gen::D17::call(i17) , gen::D18::call(i18) , gen::D19::call(i19) , gen::D20::call(i20) , gen::D21::call(i21) , gen::D22::call(i22) , gen::D23::call(i23) , gen::D24::call(i24) , gen::D25::call(i25) , gen::D26::call(i26) , gen::D27::call(i27) , gen::D28::call(i28) , gen::D29::call(i29) , gen::D30::call(i30) , gen::D31::call(i31) , gen::D32::call(i32) , gen::D33::call(i33) , gen::D34::call(i34) , gen::D35::call(i35) , gen::D36::call(i36) , gen::D37::call(i37) , gen::D38::call(i38) , gen::D39::call(i39) , gen::D40::call(i40) , gen::D41::call(i41) , gen::D42::call(i42) , gen::D43::call(i43) , gen::D44::call(i44) , gen::D45::call(i45) , gen::D46::call(i46) , gen::D47::call(i47) , gen::D48::call(i48) , gen::D49::call(i49));
+ }
+ };
+}}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp
new file mode 100644
index 0000000000..c6cd526a60
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp
@@ -0,0 +1,22 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if FUSION_MAX_MAP_SIZE <= 10
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 20
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 30
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 40
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 50
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp>
+#else
+#error "FUSION_MAX_MAP_SIZE out of bounds for preprocessed headers"
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp
new file mode 100644
index 0000000000..3948e81068
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp
@@ -0,0 +1,82 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+ template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
+ struct map : sequence_base<map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag;
+ typedef mpl::false_ is_view;
+ typedef vector<
+ T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9>
+ storage_type;
+ typedef typename storage_type::size size;
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+ BOOST_FUSION_GPU_ENABLED
+ explicit
+ map(T0 const& _0)
+ : data(_0) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1)
+ : data(_0 , _1) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2)
+ : data(_0 , _1 , _2) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3)
+ : data(_0 , _1 , _2 , _3) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4)
+ : data(_0 , _1 , _2 , _3 , _4) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5)
+ : data(_0 , _1 , _2 , _3 , _4 , _5) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+ private:
+ storage_type data;
+ };
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp
new file mode 100644
index 0000000000..cd9292e3f1
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+ template <
+ typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_
+ >
+ struct map;
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp
new file mode 100644
index 0000000000..f562fad610
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp
@@ -0,0 +1,112 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+ template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19>
+ struct map : sequence_base<map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag;
+ typedef mpl::false_ is_view;
+ typedef vector<
+ T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19>
+ storage_type;
+ typedef typename storage_type::size size;
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+ BOOST_FUSION_GPU_ENABLED
+ explicit
+ map(T0 const& _0)
+ : data(_0) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1)
+ : data(_0 , _1) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2)
+ : data(_0 , _1 , _2) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3)
+ : data(_0 , _1 , _2 , _3) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4)
+ : data(_0 , _1 , _2 , _3 , _4) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5)
+ : data(_0 , _1 , _2 , _3 , _4 , _5) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19) {}
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+ private:
+ storage_type data;
+ };
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp
new file mode 100644
index 0000000000..0ff5fa50c5
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+ template <
+ typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_
+ >
+ struct map;
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp
new file mode 100644
index 0000000000..3cbf4018b8
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp
@@ -0,0 +1,142 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+ template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29>
+ struct map : sequence_base<map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag;
+ typedef mpl::false_ is_view;
+ typedef vector<
+ T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29>
+ storage_type;
+ typedef typename storage_type::size size;
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+ BOOST_FUSION_GPU_ENABLED
+ explicit
+ map(T0 const& _0)
+ : data(_0) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1)
+ : data(_0 , _1) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2)
+ : data(_0 , _1 , _2) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3)
+ : data(_0 , _1 , _2 , _3) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4)
+ : data(_0 , _1 , _2 , _3 , _4) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5)
+ : data(_0 , _1 , _2 , _3 , _4 , _5) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29) {}
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+ private:
+ storage_type data;
+ };
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp
new file mode 100644
index 0000000000..d9be47ab44
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+ template <
+ typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_
+ >
+ struct map;
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp
new file mode 100644
index 0000000000..2a38432805
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp
@@ -0,0 +1,172 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+ template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 , typename T32 , typename T33 , typename T34 , typename T35 , typename T36 , typename T37 , typename T38 , typename T39>
+ struct map : sequence_base<map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag;
+ typedef mpl::false_ is_view;
+ typedef vector<
+ T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39>
+ storage_type;
+ typedef typename storage_type::size size;
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+ BOOST_FUSION_GPU_ENABLED
+ explicit
+ map(T0 const& _0)
+ : data(_0) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1)
+ : data(_0 , _1) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2)
+ : data(_0 , _1 , _2) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3)
+ : data(_0 , _1 , _2 , _3) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4)
+ : data(_0 , _1 , _2 , _3 , _4) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5)
+ : data(_0 , _1 , _2 , _3 , _4 , _5) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39) {}
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+ private:
+ storage_type data;
+ };
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp
new file mode 100644
index 0000000000..c2b40e1ced
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+ template <
+ typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_ , typename T30 = void_ , typename T31 = void_ , typename T32 = void_ , typename T33 = void_ , typename T34 = void_ , typename T35 = void_ , typename T36 = void_ , typename T37 = void_ , typename T38 = void_ , typename T39 = void_
+ >
+ struct map;
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp
new file mode 100644
index 0000000000..e2cca91587
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp
@@ -0,0 +1,202 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct fusion_sequence_tag;
+ template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 , typename T30 , typename T31 , typename T32 , typename T33 , typename T34 , typename T35 , typename T36 , typename T37 , typename T38 , typename T39 , typename T40 , typename T41 , typename T42 , typename T43 , typename T44 , typename T45 , typename T46 , typename T47 , typename T48 , typename T49>
+ struct map : sequence_base<map<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46 , T47 , T48 , T49> >
+ {
+ struct category : random_access_traversal_tag, associative_tag {};
+ typedef map_tag fusion_tag;
+ typedef fusion_sequence_tag tag;
+ typedef mpl::false_ is_view;
+ typedef vector<
+ T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 , T30 , T31 , T32 , T33 , T34 , T35 , T36 , T37 , T38 , T39 , T40 , T41 , T42 , T43 , T44 , T45 , T46 , T47 , T48 , T49>
+ storage_type;
+ typedef typename storage_type::size size;
+ BOOST_FUSION_GPU_ENABLED
+ map()
+ : data() {}
+ template <typename Sequence>
+ BOOST_FUSION_GPU_ENABLED
+ map(Sequence const& rhs)
+ : data(rhs) {}
+ BOOST_FUSION_GPU_ENABLED
+ explicit
+ map(T0 const& _0)
+ : data(_0) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1)
+ : data(_0 , _1) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2)
+ : data(_0 , _1 , _2) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3)
+ : data(_0 , _1 , _2 , _3) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4)
+ : data(_0 , _1 , _2 , _3 , _4) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5)
+ : data(_0 , _1 , _2 , _3 , _4 , _5) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44 , T45 const& _45)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44 , _45) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44 , T45 const& _45 , T46 const& _46)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44 , _45 , _46) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44 , T45 const& _45 , T46 const& _46 , T47 const& _47)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44 , _45 , _46 , _47) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44 , T45 const& _45 , T46 const& _46 , T47 const& _47 , T48 const& _48)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44 , _45 , _46 , _47 , _48) {}
+ BOOST_FUSION_GPU_ENABLED
+ map(T0 const& _0 , T1 const& _1 , T2 const& _2 , T3 const& _3 , T4 const& _4 , T5 const& _5 , T6 const& _6 , T7 const& _7 , T8 const& _8 , T9 const& _9 , T10 const& _10 , T11 const& _11 , T12 const& _12 , T13 const& _13 , T14 const& _14 , T15 const& _15 , T16 const& _16 , T17 const& _17 , T18 const& _18 , T19 const& _19 , T20 const& _20 , T21 const& _21 , T22 const& _22 , T23 const& _23 , T24 const& _24 , T25 const& _25 , T26 const& _26 , T27 const& _27 , T28 const& _28 , T29 const& _29 , T30 const& _30 , T31 const& _31 , T32 const& _32 , T33 const& _33 , T34 const& _34 , T35 const& _35 , T36 const& _36 , T37 const& _37 , T38 const& _38 , T39 const& _39 , T40 const& _40 , T41 const& _41 , T42 const& _42 , T43 const& _43 , T44 const& _44 , T45 const& _45 , T46 const& _46 , T47 const& _47 , T48 const& _48 , T49 const& _49)
+ : data(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9 , _10 , _11 , _12 , _13 , _14 , _15 , _16 , _17 , _18 , _19 , _20 , _21 , _22 , _23 , _24 , _25 , _26 , _27 , _28 , _29 , _30 , _31 , _32 , _33 , _34 , _35 , _36 , _37 , _38 , _39 , _40 , _41 , _42 , _43 , _44 , _45 , _46 , _47 , _48 , _49) {}
+ template <typename T>
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(T const& rhs)
+ {
+ data = rhs;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ map& operator=(map const& rhs)
+ {
+ data = rhs.data;
+ return *this;
+ }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type& get_data() { return data; }
+ BOOST_FUSION_GPU_ENABLED
+ storage_type const& get_data() const { return data; }
+ private:
+ storage_type data;
+ };
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp
new file mode 100644
index 0000000000..6c107225a7
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+ struct void_;
+ struct map_tag;
+ struct map_iterator_tag;
+ template <
+ typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_ , typename T30 = void_ , typename T31 = void_ , typename T32 = void_ , typename T33 = void_ , typename T34 = void_ , typename T35 = void_ , typename T36 = void_ , typename T37 = void_ , typename T38 = void_ , typename T39 = void_ , typename T40 = void_ , typename T41 = void_ , typename T42 = void_ , typename T43 = void_ , typename T44 = void_ , typename T45 = void_ , typename T46 = void_ , typename T47 = void_ , typename T48 = void_ , typename T49 = void_
+ >
+ struct map;
+}}
diff --git a/boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp b/boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp
new file mode 100644
index 0000000000..2e66a4577f
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp
@@ -0,0 +1,22 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+
+ 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)
+
+ This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if FUSION_MAX_MAP_SIZE <= 10
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 20
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 30
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 40
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp>
+#elif FUSION_MAX_MAP_SIZE <= 50
+#include <boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp>
+#else
+#error "FUSION_MAX_MAP_SIZE out of bounds for preprocessed headers"
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/value_at_impl.hpp b/boost/fusion/container/map/detail/cpp03/value_at_impl.hpp
new file mode 100644
index 0000000000..d61ab2038a
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/value_at_impl.hpp
@@ -0,0 +1,35 @@
+/*=============================================================================
+ Copyright (c) 2001-2011 Joel de Guzman
+ Copyright (c) 2011 Brandon Kohn
+
+ 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)
+==============================================================================*/
+#if !defined(BOOST_FUSION_MAP_DETAIL_VALUE_AT_IMPL_HPP)
+#define BOOST_FUSION_MAP_DETAIL_VALUE_AT_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/mpl/at.hpp>
+
+namespace boost { namespace fusion
+{
+ struct map_tag;
+
+ namespace extension
+ {
+ template <typename Tag>
+ struct value_at_impl;
+
+ template <>
+ struct value_at_impl<map_tag>
+ {
+ template <typename Sequence, typename N>
+ struct apply
+ {
+ typedef typename mpl::at<typename Sequence::storage_type::types, N>::type type;
+ };
+ };
+ }
+}}
+
+#endif //BOOST_FUSION_MAP_DETAIL_VALUE_AT_IMPL_HPP
diff --git a/boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp b/boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp
new file mode 100644
index 0000000000..f6d24aed2d
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp
@@ -0,0 +1,33 @@
+/*=============================================================================
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_VALUE_OF_DATA_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_VALUE_OF_DATA_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/container/map/detail/cpp03/value_of_impl.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct value_of_data_impl;
+
+ template <>
+ struct value_of_data_impl<map_iterator_tag>
+ {
+ template <typename It>
+ struct apply
+ {
+ typedef typename
+ value_of_impl<map_iterator_tag>::
+ template apply<It>::type::second_type
+ type;
+ };
+ };
+}}}
+
+#endif
diff --git a/boost/fusion/container/map/detail/cpp03/value_of_impl.hpp b/boost/fusion/container/map/detail/cpp03/value_of_impl.hpp
new file mode 100644
index 0000000000..9b0f9a074b
--- /dev/null
+++ b/boost/fusion/container/map/detail/cpp03/value_of_impl.hpp
@@ -0,0 +1,40 @@
+/*=============================================================================
+ Copyright (c) 2009 Christopher Schmidt
+
+ 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)
+==============================================================================*/
+
+#ifndef BOOST_FUSION_CONTAINER_MAP_DETAIL_VALUE_OF_IMPL_HPP
+#define BOOST_FUSION_CONTAINER_MAP_DETAIL_VALUE_OF_IMPL_HPP
+
+#include <boost/fusion/support/config.hpp>
+#include <boost/fusion/sequence/intrinsic/value_at.hpp>
+#include <boost/type_traits/is_const.hpp>
+
+namespace boost { namespace fusion { namespace extension
+{
+ template <typename>
+ struct value_of_impl;
+
+ template <>
+ struct value_of_impl<map_iterator_tag>
+ {
+ template <typename It>
+ struct apply
+ {
+ typedef typename
+ result_of::value_at<
+ typename mpl::if_<
+ is_const<typename It::seq_type>
+ , typename It::seq_type::storage_type const
+ , typename It::seq_type::storage_type
+ >::type
+ , typename It::index
+ >::type
+ type;
+ };
+ };
+}}}
+
+#endif