diff options
author | Chanho Park <chanho61.park@samsung.com> | 2014-12-11 18:55:56 +0900 |
---|---|---|
committer | Chanho Park <chanho61.park@samsung.com> | 2014-12-11 18:55:56 +0900 |
commit | 08c1e93fa36a49f49325a07fe91ff92c964c2b6c (patch) | |
tree | 7a7053ceb8874b28ec4b868d4c49b500008a102e /boost/fusion/view/zip_view | |
parent | bb4dd8289b351fae6b55e303f189127a394a1edd (diff) | |
download | boost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.tar.gz boost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.tar.bz2 boost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.zip |
Imported Upstream version 1.57.0upstream/1.57.0
Diffstat (limited to 'boost/fusion/view/zip_view')
14 files changed, 48 insertions, 4 deletions
diff --git a/boost/fusion/view/zip_view/detail/advance_impl.hpp b/boost/fusion/view/zip_view/detail/advance_impl.hpp index 2e4e1a7895..17012ac8b6 100644 --- a/boost/fusion/view/zip_view/detail/advance_impl.hpp +++ b/boost/fusion/view/zip_view/detail/advance_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_ADVANCE_IMPL_20061024_2021) #define FUSION_ADVANCE_IMPL_20061024_2021 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/iterator/advance.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> @@ -33,6 +34,7 @@ namespace boost { namespace fusion { }; template<typename It> + BOOST_FUSION_GPU_ENABLED typename result<poly_advance(It)>::type operator()(const It& it) const { @@ -55,6 +57,7 @@ namespace boost { namespace fusion { typedef zip_view_iterator< typename result_of::transform<typename It::iterators, detail::poly_advance<N> >::type> type; + BOOST_FUSION_GPU_ENABLED static type call(It const& it) { diff --git a/boost/fusion/view/zip_view/detail/at_impl.hpp b/boost/fusion/view/zip_view/detail/at_impl.hpp index 89df542f1f..f92c981725 100644 --- a/boost/fusion/view/zip_view/detail/at_impl.hpp +++ b/boost/fusion/view/zip_view/detail/at_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_AT_IMPL_20060124_1933) #define FUSION_AT_IMPL_20060124_1933 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/container/vector.hpp> #include <boost/fusion/sequence/intrinsic/at.hpp> #include <boost/fusion/container/vector/convert.hpp> @@ -43,6 +44,7 @@ namespace boost { namespace fusion }; template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<poly_at(Seq&)>::type operator()(Seq& seq) const { @@ -50,12 +52,14 @@ namespace boost { namespace fusion } template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<poly_at(Seq const&)>::type operator()(Seq const& seq) const { return fusion::at<N>(seq); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -78,6 +82,7 @@ namespace boost { namespace fusion typename result_of::transform< typename Seq::sequences, detail::poly_at<N> >::type>::type type; + BOOST_FUSION_GPU_ENABLED static type call(Seq& seq) { diff --git a/boost/fusion/view/zip_view/detail/begin_impl.hpp b/boost/fusion/view/zip_view/detail/begin_impl.hpp index 43852d79c6..32be2c7d33 100644 --- a/boost/fusion/view/zip_view/detail/begin_impl.hpp +++ b/boost/fusion/view/zip_view/detail/begin_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_BEGIN_IMPL_20060123_2147) #define FUSION_BEGIN_IMPL_20060123_2147 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> @@ -40,6 +41,7 @@ namespace boost { namespace fusion { }; template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<poly_begin(Seq&)>::type operator()(Seq& seq) const { @@ -47,12 +49,14 @@ namespace boost { namespace fusion { } template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<poly_begin(Seq const&)>::type operator()(Seq const& seq) const { return fusion::begin(seq); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -75,6 +79,7 @@ namespace boost { namespace fusion { typename result_of::transform<typename Sequence::sequences, detail::poly_begin>::type, typename Sequence::category> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& sequence) { diff --git a/boost/fusion/view/zip_view/detail/deref_impl.hpp b/boost/fusion/view/zip_view/detail/deref_impl.hpp index c24e1452d5..e9f091c3b5 100644 --- a/boost/fusion/view/zip_view/detail/deref_impl.hpp +++ b/boost/fusion/view/zip_view/detail/deref_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_DEREF_IMPL_20061024_1959) #define FUSION_DEREF_IMPL_20061024_1959 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/container/vector.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> @@ -42,12 +43,14 @@ namespace boost { namespace fusion { }; template<typename It> + BOOST_FUSION_GPU_ENABLED typename result<poly_deref(It)>::type operator()(const It& it) const { return fusion::deref(it); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -69,6 +72,7 @@ namespace boost { namespace fusion { typedef typename result_of::as_vector< typename result_of::transform<typename It::iterators, detail::poly_deref>::type>::type type; + BOOST_FUSION_GPU_ENABLED static type call(It const& it) { diff --git a/boost/fusion/view/zip_view/detail/distance_impl.hpp b/boost/fusion/view/zip_view/detail/distance_impl.hpp index 8c9789330e..8beaccca44 100644 --- a/boost/fusion/view/zip_view/detail/distance_impl.hpp +++ b/boost/fusion/view/zip_view/detail/distance_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_DISTANCE_IMPL_20060124_2033) #define FUSION_DISTANCE_IMPL_20060124_2033 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/eval_if.hpp> #include <boost/mpl/placeholders.hpp> #include <boost/mpl/assert.hpp> @@ -69,6 +70,7 @@ namespace boost { namespace fusion { struct apply : detail::zip_view_iterator_distance<It1, It2>::type { + BOOST_FUSION_GPU_ENABLED static typename detail::zip_view_iterator_distance<It1, It2>::type call(It1 const& /*it1*/, It2 const& /*it2*/) { diff --git a/boost/fusion/view/zip_view/detail/end_impl.hpp b/boost/fusion/view/zip_view/detail/end_impl.hpp index 6423a88f18..d57b08fbd7 100644 --- a/boost/fusion/view/zip_view/detail/end_impl.hpp +++ b/boost/fusion/view/zip_view/detail/end_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_END_IMPL_20060123_2208) #define FUSION_END_IMPL_20060123_2208 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> @@ -54,6 +55,7 @@ namespace boost { namespace fusion { }; template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<endpoints(Seq&)>::type operator()(Seq& seq) const { @@ -61,12 +63,14 @@ namespace boost { namespace fusion { } template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<endpoints(Seq const&)>::type operator()(Seq const& seq) const { return fusion::advance<M>(fusion::begin(seq)); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -89,6 +93,7 @@ namespace boost { namespace fusion { typename result_of::transform<typename Sequence::sequences, detail::endpoints<typename Sequence::size> >::type, typename Sequence::category> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& sequence) { diff --git a/boost/fusion/view/zip_view/detail/equal_to_impl.hpp b/boost/fusion/view/zip_view/detail/equal_to_impl.hpp index 0349d814e5..6292a525f0 100644 --- a/boost/fusion/view/zip_view/detail/equal_to_impl.hpp +++ b/boost/fusion/view/zip_view/detail/equal_to_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_EQUAL_TO_IMPL_20060128_1423) #define FUSION_EQUAL_TO_IMPL_20060128_1423 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/mpl.hpp> #include <boost/mpl/lambda.hpp> diff --git a/boost/fusion/view/zip_view/detail/next_impl.hpp b/boost/fusion/view/zip_view/detail/next_impl.hpp index 56bf853d65..e9236b4200 100644 --- a/boost/fusion/view/zip_view/detail/next_impl.hpp +++ b/boost/fusion/view/zip_view/detail/next_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_NEXT_IMPL_20060124_2006) #define FUSION_NEXT_IMPL_20060124_2006 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/iterator/next.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> @@ -41,12 +42,14 @@ namespace boost { namespace fusion { }; template<typename It> + BOOST_FUSION_GPU_ENABLED typename result<poly_next(It)>::type operator()(const It& it) const { return fusion::next(it); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -69,6 +72,7 @@ namespace boost { namespace fusion { typename result_of::transform<typename Iterator::iterators, detail::poly_next>::type, typename Iterator::category> type; + BOOST_FUSION_GPU_ENABLED static type call(Iterator const& it) { diff --git a/boost/fusion/view/zip_view/detail/prior_impl.hpp b/boost/fusion/view/zip_view/detail/prior_impl.hpp index 875e7d2853..aa69229565 100644 --- a/boost/fusion/view/zip_view/detail/prior_impl.hpp +++ b/boost/fusion/view/zip_view/detail/prior_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_PRIOR_IMPL_20060124_2006) #define FUSION_PRIOR_IMPL_20060124_2006 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/iterator/prior.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> @@ -40,12 +41,14 @@ namespace boost { namespace fusion { }; template<typename It> + BOOST_FUSION_GPU_ENABLED typename result<poly_prior(It)>::type operator()(const It& it) const { return fusion::prior(it); } + BOOST_FUSION_GPU_ENABLED unused_type operator()(unused_type const&) const { return unused_type(); @@ -68,6 +71,7 @@ namespace boost { namespace fusion { typename result_of::transform<typename Iterator::iterators, detail::poly_prior>::type, typename Iterator::category> type; + BOOST_FUSION_GPU_ENABLED static type call(Iterator const& it) diff --git a/boost/fusion/view/zip_view/detail/value_at_impl.hpp b/boost/fusion/view/zip_view/detail/value_at_impl.hpp index 13e0274f6d..26d75b469e 100644 --- a/boost/fusion/view/zip_view/detail/value_at_impl.hpp +++ b/boost/fusion/view/zip_view/detail/value_at_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_VALUE_AT_IMPL_20060124_2129) #define FUSION_VALUE_AT_IMPL_20060124_2129 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/container/vector/convert.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> #include <boost/fusion/sequence/intrinsic/value_at.hpp> @@ -38,8 +39,9 @@ namespace boost { namespace fusion { {}; // never called, but needed for decltype-based result_of (C++0x) -#ifndef BOOST_NO_RVALUE_REFERENCES +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<poly_value_at(Seq)>::type operator()(Seq&&) const; #endif diff --git a/boost/fusion/view/zip_view/detail/value_of_impl.hpp b/boost/fusion/view/zip_view/detail/value_of_impl.hpp index 5571155e25..0c06e0e10c 100644 --- a/boost/fusion/view/zip_view/detail/value_of_impl.hpp +++ b/boost/fusion/view/zip_view/detail/value_of_impl.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_VALUE_OF_IMPL_20060124_2147) #define FUSION_VALUE_OF_IMPL_20060124_2147 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/container/vector/convert.hpp> #include <boost/fusion/algorithm/transformation/transform.hpp> #include <boost/fusion/iterator/value_of.hpp> @@ -37,8 +38,9 @@ namespace boost { namespace fusion {}; // never called, but needed for decltype-based result_of (C++0x) -#ifndef BOOST_NO_RVALUE_REFERENCES +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template<typename It> + BOOST_FUSION_GPU_ENABLED typename result<poly_value_of(It)>::type operator()(It&&) const; #endif diff --git a/boost/fusion/view/zip_view/zip_view.hpp b/boost/fusion/view/zip_view/zip_view.hpp index e9a0222df5..4e807f732b 100644 --- a/boost/fusion/view/zip_view/zip_view.hpp +++ b/boost/fusion/view/zip_view/zip_view.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_ZIP_VIEW_23012006_0813) #define FUSION_ZIP_VIEW_23012006_0813 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/fusion/support/unused.hpp> #include <boost/fusion/iterator/equal_to.hpp> @@ -68,8 +69,9 @@ namespace boost { namespace fusion { }; // never called, but needed for decltype-based result_of (C++0x) -#ifndef BOOST_NO_RVALUE_REFERENCES +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template<typename Seq> + BOOST_FUSION_GPU_ENABLED typename result<seq_ref_size(Seq)>::type operator()(Seq&&) const; #endif @@ -89,8 +91,9 @@ namespace boost { namespace fusion { }; // never called, but needed for decltype-based result_of (C++0x) -#ifndef BOOST_NO_RVALUE_REFERENCES +#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template<typename Lhs, typename Rhs> + BOOST_FUSION_GPU_ENABLED typename result<poly_min(Lhs, Rhs)>::type operator()(Lhs&&, Rhs&&) const; #endif @@ -119,6 +122,7 @@ namespace boost { namespace fusion { typedef typename fusion::result_of::as_vector<Sequences>::type sequences; typedef typename detail::min_size<real_sequences>::type size; + BOOST_FUSION_GPU_ENABLED zip_view( const Sequences& seqs) : sequences_(seqs) diff --git a/boost/fusion/view/zip_view/zip_view_iterator.hpp b/boost/fusion/view/zip_view/zip_view_iterator.hpp index bf0b8a39e5..fec50e6f18 100644 --- a/boost/fusion/view/zip_view/zip_view_iterator.hpp +++ b/boost/fusion/view/zip_view/zip_view_iterator.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_ZIP_VIEW_ITERATOR_23012006_0814) #define FUSION_ZIP_VIEW_ITERATOR_23012006_0814 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp> #include <boost/fusion/support/iterator_base.hpp> #include <boost/fusion/view/zip_view/detail/deref_impl.hpp> @@ -34,6 +35,7 @@ namespace boost { namespace fusion { typedef Traversal category; template<typename InitSeq> + BOOST_FUSION_GPU_ENABLED zip_view_iterator( const InitSeq& iterator_seq) : iterators_(iterator_seq) diff --git a/boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp b/boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp index d2bfff2388..7f1623090f 100644 --- a/boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp +++ b/boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_ZIP_VIEW_ITERATOR_FWD) #define FUSION_ZIP_VIEW_ITERATOR_FWD +#include <boost/fusion/support/config.hpp> #include <boost/fusion/view/detail/strictest_traversal.hpp> namespace boost { namespace fusion { |