diff options
author | Tobias Markmann <tm@ayena.de> | 2014-10-19 20:22:58 (GMT) |
---|---|---|
committer | Tobias Markmann <tm@ayena.de> | 2014-10-20 13:49:33 (GMT) |
commit | 6b22dfcf59474dd016a0355a3102a1dd3692d92c (patch) | |
tree | 2b1fd33be433a91e81fee84fdc2bf1b52575d934 /3rdParty/Boost/src/boost/fusion/sequence | |
parent | 38b0cb785fea8eae5e48fae56440695fdfd10ee1 (diff) | |
download | swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.zip swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.tar.bz2 |
Update Boost in 3rdParty to version 1.56.0.
This updates Boost in our 3rdParty directory to version 1.56.0.
Updated our update.sh script to stop on error.
Changed error reporting in SwiftTools/CrashReporter.cpp to SWIFT_LOG due to
missing include of <iostream> with newer Boost.
Change-Id: I4b35c77de951333979a524097f35f5f83d325edc
Diffstat (limited to '3rdParty/Boost/src/boost/fusion/sequence')
24 files changed, 85 insertions, 11 deletions
diff --git a/3rdParty/Boost/src/boost/fusion/sequence/comparison/detail/equal_to.hpp b/3rdParty/Boost/src/boost/fusion/sequence/comparison/detail/equal_to.hpp index 56cfe1b..577023d 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/comparison/detail/equal_to.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/comparison/detail/equal_to.hpp @@ -5,12 +5,13 @@ 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_EQUAL_TO_05052005_1142) #define FUSION_EQUAL_TO_05052005_1142 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> #include <boost/fusion/iterator/equal_to.hpp> #include <boost/fusion/support/as_const.hpp> @@ -20,39 +21,43 @@ namespace boost { namespace fusion { namespace detail struct sequence_equal_to { typedef typename result_of::end<Seq1>::type end1_type; typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { return true; } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { return extension::as_const(*a) == extension::as_const(*b) && call(fusion::next(a), fusion::next(b)); } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { typename result_of::equal_to<I1, end1_type>::type eq; return call(a, b, eq); } }; template <typename Seq1, typename Seq2> struct sequence_equal_to<Seq1, Seq2, false> { template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& /*a*/, I2 const& /*b*/) { return false; } }; diff --git a/3rdParty/Boost/src/boost/fusion/sequence/comparison/enable_comparison.hpp b/3rdParty/Boost/src/boost/fusion/sequence/comparison/enable_comparison.hpp index bd55ac3..1279417 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/comparison/enable_comparison.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/comparison/enable_comparison.hpp @@ -4,12 +4,13 @@ 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_ENABLE_COMPARISON_09232005_1958) #define FUSION_ENABLE_COMPARISON_09232005_1958 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/or.hpp> #include <boost/mpl/and.hpp> #include <boost/mpl/not.hpp> #include <boost/mpl/equal_to.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/fusion/support/is_sequence.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/sequence/convert.hpp b/3rdParty/Boost/src/boost/fusion/sequence/convert.hpp index 5264810..461b921 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/convert.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/convert.hpp @@ -17,29 +17,31 @@ namespace boost { namespace fusion namespace result_of { template <typename Tag, typename Sequence> struct convert { - typedef typename extension::convert_impl<Tag> gen; - typedef typename - gen::template apply<Sequence>::type - type; + extension::convert_impl<Tag>::template apply<Sequence> + gen; + + typedef typename gen::type type; }; } template <typename Tag, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::convert<Tag, Sequence>::type convert(Sequence& seq) { typedef typename result_of::convert<Tag, Sequence>::gen gen; return gen::call(seq); } template <typename Tag, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::convert<Tag, Sequence const>::type convert(Sequence const& seq) { typedef typename result_of::convert<Tag, Sequence const>::gen gen; return gen::call(seq); } diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic.hpp index 7da2cf0..4583807 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic.hpp @@ -4,12 +4,13 @@ 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_SEQUENCE_INTRINSIC_10022005_0618) #define FUSION_SEQUENCE_INTRINSIC_10022005_0618 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/at.hpp> #include <boost/fusion/sequence/intrinsic/back.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/empty.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/front.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at.hpp index 92da7bb..aa0d974 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at.hpp @@ -4,12 +4,13 @@ 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_AT_05042005_0722) #define FUSION_AT_05042005_0722 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/support/detail/access.hpp> @@ -68,41 +69,45 @@ namespace boost { namespace fusion : at<Sequence, mpl::int_<N> > {}; } template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> , result_of::at<Sequence, N> >::type at(Sequence& seq) { return result_of::at<Sequence, N>::call(seq); } template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at<Sequence const, N>::type at(Sequence const& seq) { return result_of::at<Sequence const, N>::call(seq); } template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> , result_of::at_c<Sequence, N> >::type at_c(Sequence& seq) { return fusion::at<mpl::int_<N> >(seq); } template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at_c<Sequence const, N>::type at_c(Sequence const& seq) { return fusion::at<mpl::int_<N> >(seq); } }} diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_c.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_c.hpp index 449e3f4..327798c 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_c.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_c.hpp @@ -4,10 +4,11 @@ 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_AT_C_08252008_0308) #define FUSION_AT_C_08252008_0308 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/at.hpp> #endif diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_key.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_key.hpp index 24c2fff..844de84 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_key.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/at_key.hpp @@ -5,12 +5,13 @@ 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_AT_KEY_20060304_1755) #define BOOST_FUSION_AT_KEY_20060304_1755 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/algorithm/query/find.hpp> #include <boost/fusion/iterator/deref_data.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/support/detail/access.hpp> @@ -34,12 +35,13 @@ namespace boost { namespace fusion typedef typename result_of::deref_data< typename result_of::find<Seq, Key>::type >::type type; + BOOST_FUSION_GPU_ENABLED static type call(Seq& seq) { return fusion::deref_data(fusion::find<Key>(seq)); } }; @@ -69,23 +71,25 @@ namespace boost { namespace fusion : extension::at_key_impl<typename detail::tag_of<Sequence>::type>:: template apply<Sequence, Key> {}; } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> , result_of::at_key<Sequence, Key> >::type at_key(Sequence& seq) { return result_of::at_key<Sequence, Key>::call(seq); } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at_key<Sequence const, Key>::type at_key(Sequence const& seq) { return result_of::at_key<Sequence const, Key>::call(seq); } }} diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/back.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/back.hpp index 0a4d482..f934355 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/back.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/back.hpp @@ -4,12 +4,13 @@ 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_BACK_09162005_0350) #define FUSION_BACK_09162005_0350 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/iterator/prior.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/mpl/bool.hpp> @@ -23,19 +24,21 @@ namespace boost { namespace fusion struct back : result_of::deref<typename result_of::prior<typename result_of::end<Sequence>::type>::type> {}; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::back<Sequence>::type back(Sequence& seq) { return *fusion::prior(fusion::end(seq)); } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::back<Sequence const>::type back(Sequence const& seq) { return *fusion::prior(fusion::end(seq)); } }} diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/begin.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/begin.hpp index 7a7ecf6..af4e312 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/begin.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/begin.hpp @@ -4,12 +4,13 @@ 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_BEGIN_04052005_1132) #define FUSION_BEGIN_04052005_1132 +#include <boost/fusion/support/config.hpp> #include <boost/blank.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/support/is_sequence.hpp> @@ -67,23 +68,25 @@ namespace boost { namespace fusion : extension::begin_impl<typename detail::tag_of<Sequence>::type>:: template apply<Sequence> {}; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::begin<Sequence> >::type const begin(Sequence& seq) { return result_of::begin<Sequence>::call(seq); } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::begin<Sequence const> >::type const begin(Sequence const& seq) diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp index 968718e..81d0966 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp @@ -4,40 +4,42 @@ 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_SEGMENTED_BEGIN_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_BEGIN_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp> #include <boost/fusion/iterator/segmented_iterator.hpp> #include <boost/fusion/view/iterator_range.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/empty.hpp> #include <boost/fusion/container/list/cons.hpp> namespace boost { namespace fusion { namespace detail { //auto segmented_begin( seq ) //{ - // return make_segmented_iterator( segmented_begin_impl( seq, nil ) ); + // return make_segmented_iterator( segmented_begin_impl( seq, nil_ ) ); //} - template <typename Sequence, typename Nil = fusion::nil> + template <typename Sequence, typename Nil_ = fusion::nil_> struct segmented_begin { typedef segmented_iterator< - typename segmented_begin_impl<Sequence, Nil>::type + typename segmented_begin_impl<Sequence, Nil_>::type > type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq) { return type( - segmented_begin_impl<Sequence, Nil>::call(seq, Nil())); + segmented_begin_impl<Sequence, Nil_>::call(seq, Nil_())); } }; }}} #endif diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp index 5069432..2ab4627 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp @@ -4,12 +4,13 @@ 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_SEGMENTED_BEGIN_IMPL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_BEGIN_IMPL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/remove_const.hpp> #include <boost/fusion/container/list/cons_fwd.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/is_segmented.hpp> #include <boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp> #include <boost/fusion/support/detail/segmented_fold_until_impl.hpp> @@ -34,12 +35,13 @@ namespace boost { namespace fusion { namespace detail > range_type; typedef cons<range_type, Context> type; typedef mpl::false_ continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, State const&, Context const& context, segmented_begin_fun) { return type(range_type(fusion::begin(seq), fusion::end(seq)), context); } }; }; @@ -59,12 +61,13 @@ namespace boost { namespace fusion { namespace detail , segmented_begin_fun > fold_impl; typedef typename fold_impl::type type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, Stack const& stack) { return fold_impl::call(seq, end_impl::call(seq, stack), stack, segmented_begin_fun()); } }; @@ -73,12 +76,13 @@ namespace boost { namespace fusion { namespace detail { typedef typename result_of::begin<Sequence>::type begin_type; typedef typename result_of::end<Sequence>::type end_type; typedef iterator_range<begin_type, end_type> pair_type; typedef cons<pair_type, Stack> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, Stack stack) { return type(pair_type(fusion::begin(seq), fusion::end(seq)), stack); } }; diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp index 469862a..c26865a 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp @@ -4,36 +4,38 @@ 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_SEGMENTED_END_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_END_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp> #include <boost/fusion/iterator/segmented_iterator.hpp> #include <boost/fusion/container/list/cons.hpp> namespace boost { namespace fusion { namespace detail { //auto segmented_end( seq ) //{ // return make_segmented_iterator( segmented_end_impl( seq ) ); //} - template <typename Sequence, typename Nil = fusion::nil> + template <typename Sequence, typename Nil_ = fusion::nil_> struct segmented_end { typedef segmented_iterator< - typename segmented_end_impl<Sequence, Nil>::type + typename segmented_end_impl<Sequence, Nil_>::type > type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence & seq) { return type( - segmented_end_impl<Sequence, Nil>::call(seq, Nil())); + segmented_end_impl<Sequence, Nil_>::call(seq, Nil_())); } }; }}} #endif diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp index 149027b..9be1504 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp @@ -4,12 +4,13 @@ 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_SEGMENTED_END_IMPL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_END_IMPL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/mpl/assert.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/remove_reference.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/container/list/cons_fwd.hpp> #include <boost/fusion/support/is_segmented.hpp> @@ -44,12 +45,13 @@ namespace boost { namespace fusion { namespace detail >::type end_type; typedef iterator_range<end_type, end_type> pair_type; typedef cons<pair_type, Stack> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence & seq, Stack stack) { end_type end = fusion::end(fusion::segments(seq)); return type(pair_type(end, end), stack); } }; diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp index 03cef28..4defced 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp @@ -4,12 +4,13 @@ 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_SEGMENTED_SIZE_08112006_1141) #define BOOST_FUSION_SEGMENTED_SIZE_08112006_1141 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/remove_reference.hpp> #include <boost/mpl/fold.hpp> #include <boost/mpl/plus.hpp> #include <boost/mpl/size_t.hpp> #include <boost/mpl/placeholders.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/empty.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/empty.hpp index a9928ab..3c8666a 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/empty.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/empty.hpp @@ -4,12 +4,13 @@ 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_EMPTY_09162005_0335) #define FUSION_EMPTY_09162005_0335 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/support/tag_of.hpp> namespace boost { namespace fusion @@ -47,12 +48,13 @@ namespace boost { namespace fusion : extension::empty_impl<typename detail::tag_of<Sequence>::type>:: template apply<Sequence> {}; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::empty<Sequence>::type empty(Sequence const&) { typedef typename result_of::empty<Sequence>::type result; return result(); } diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/end.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/end.hpp index 995ed7a..3e69518 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/end.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/end.hpp @@ -4,12 +4,13 @@ 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_END_04052005_1141) #define FUSION_END_04052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/blank.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/support/is_sequence.hpp> @@ -67,23 +68,25 @@ namespace boost { namespace fusion : extension::end_impl<typename detail::tag_of<Sequence>::type>:: template apply<Sequence> {}; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::end<Sequence> >::type const end(Sequence& seq) { return result_of::end<Sequence>::call(seq); } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::end<Sequence const> >::type const end(Sequence const& seq) diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/front.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/front.hpp index 0e50e3c..6d939da 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/front.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/front.hpp @@ -4,12 +4,13 @@ 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_FRONT_09162005_0343) #define FUSION_FRONT_09162005_0343 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/mpl/bool.hpp> namespace boost { namespace fusion @@ -22,19 +23,21 @@ namespace boost { namespace fusion struct front : result_of::deref<typename result_of::begin<Sequence>::type> {}; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::front<Sequence>::type front(Sequence& seq) { return *fusion::begin(seq); } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::front<Sequence const>::type front(Sequence const& seq) { return *fusion::begin(seq); } }} diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/has_key.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/has_key.hpp index 9e0969a..bba2c69 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/has_key.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/has_key.hpp @@ -4,12 +4,13 @@ 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_HAS_KEY_09232005_1454) #define FUSION_HAS_KEY_09232005_1454 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/iterator/equal_to.hpp> #include <boost/fusion/algorithm/query/find.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/mpl/not.hpp> @@ -64,12 +65,13 @@ namespace boost { namespace fusion : extension::has_key_impl<typename detail::tag_of<Sequence>::type>:: template apply<Sequence, Key> {}; } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::has_key<Sequence, Key>::type has_key(Sequence const&) { typedef typename result_of::has_key<Sequence, Key>::type result; return result(); } diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/segments.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/segments.hpp index afd5d40..a1bbaca 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/segments.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/segments.hpp @@ -4,12 +4,13 @@ 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_SEGMENTS_04052005_1141) #define BOOST_FUSION_SEGMENTS_04052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/utility/enable_if.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> namespace boost { namespace fusion @@ -50,24 +51,26 @@ namespace boost { namespace fusion extension::segments_impl<tag_type>::template apply<Sequence>::type type; }; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> , result_of::segments<Sequence> >::type segments(Sequence& seq) { typedef typename traits::tag_of<Sequence>::type tag_type; return extension::segments_impl<tag_type>::template apply<Sequence>::call(seq); } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::segments<Sequence const>::type segments(Sequence const& seq) { typedef typename traits::tag_of<Sequence const>::type tag_type; return extension::segments_impl<tag_type>::template apply<Sequence const>::call(seq); } diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/size.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/size.hpp index 0a1c165..51e613f 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/size.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/size.hpp @@ -4,12 +4,13 @@ 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_SIZE_05052005_0214) #define FUSION_SIZE_05052005_0214 +#include <boost/fusion/support/config.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> #include <boost/mpl/int.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/support/is_segmented.hpp> @@ -74,12 +75,13 @@ namespace boost { namespace fusion template apply<Sequence>::type size_application; BOOST_STATIC_CONSTANT(int, value = size_application::value); }; } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::size<Sequence>::type size(Sequence const&) { typedef typename result_of::size<Sequence>::type result; return result(); } diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at.hpp index ce314a8..362669b 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at.hpp @@ -4,12 +4,13 @@ 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_VALUE_AT_05052005_0229) #define FUSION_VALUE_AT_05052005_0229 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> namespace boost { namespace fusion { diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at_key.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at_key.hpp index 23d34ee..6d8be3f 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at_key.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic/value_at_key.hpp @@ -5,12 +5,13 @@ 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_VALUE_AT_KEY_05052005_0229) #define FUSION_VALUE_AT_KEY_05052005_0229 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/iterator/value_of_data.hpp> #include <boost/fusion/algorithm/query/find.hpp> #include <boost/fusion/support/tag_of.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic_fwd.hpp b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic_fwd.hpp index 57409a3..3b248a0 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/intrinsic_fwd.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/intrinsic_fwd.hpp @@ -4,12 +4,13 @@ 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_SEQUENCE_INTRINSIC_FWD_HPP_INCLUDED) #define BOOST_FUSION_SEQUENCE_INTRINSIC_FWD_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/utility/enable_if.hpp> #include <boost/fusion/support/is_sequence.hpp> namespace boost { namespace fusion { @@ -89,115 +90,134 @@ namespace boost { namespace fusion template <typename Sequence, typename N> struct value_at_key; } template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> , result_of::at<Sequence, N> >::type at(Sequence& seq); template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at<Sequence const, N>::type at(Sequence const& seq); template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> , result_of::at_c<Sequence, N> >::type at_c(Sequence& seq); template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at_c<Sequence const, N>::type at_c(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::back<Sequence>::type back(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::back<Sequence const>::type back(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::begin<Sequence> >::type const begin(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::begin<Sequence const> >::type const begin(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::empty<Sequence>::type empty(Sequence const&); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::end<Sequence> >::type const end(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> , result_of::end<Sequence const> >::type const end(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::front<Sequence>::type front(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::front<Sequence const>::type front(Sequence const& seq); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::has_key<Sequence, Key>::type has_key(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> , result_of::segments<Sequence> >::type segments(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::segments<Sequence const>::type segments(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::size<Sequence>::type size(Sequence const&); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> , result_of::at_key<Sequence, Key> >::type at_key(Sequence& seq); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at_key<Sequence const, Key>::type at_key(Sequence const& seq); }} #endif diff --git a/3rdParty/Boost/src/boost/fusion/sequence/sequence_facade.hpp b/3rdParty/Boost/src/boost/fusion/sequence/sequence_facade.hpp index fd6b095..ff578a0 100644 --- a/3rdParty/Boost/src/boost/fusion/sequence/sequence_facade.hpp +++ b/3rdParty/Boost/src/boost/fusion/sequence/sequence_facade.hpp @@ -4,12 +4,13 @@ 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_SEQUENCE_FACADE_09252006_1044) #define FUSION_SEQUENCE_FACADE_09252006_1044 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/mpl/bool.hpp> namespace boost { namespace fusion { struct sequence_facade_tag; |