gpu-enable functions

This commit is contained in:
Eric Niebler
2014-01-09 17:58:06 -08:00
committed by Eric Niebler
parent 867c7e5dfb
commit c4f9f0d1b6
840 changed files with 7409 additions and 116 deletions

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_ADAPTED_30122005_1420)
#define BOOST_FUSION_ADAPTED_30122005_1420
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/adt.hpp>
#include <boost/fusion/adapted/array.hpp>
#include <boost/fusion/adapted/boost_array.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_HPP
#define BOOST_FUSION_ADAPTED_ADT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp>
#include <boost/fusion/adapted/adt/adapt_assoc_adt.hpp>
#include <boost/fusion/adapted/adt/adapt_adt_named.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_HPP
#define BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/empty.hpp>
#include <boost/type_traits/add_reference.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_NAMED_HPP
#define BOOST_FUSION_ADAPTED_ADT_ADAPT_ADT_NAMED_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/adt/adapt_adt.hpp>
#include <boost/fusion/adapted/struct/detail/proxy_type.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_ADAPT_ASSOC_ADT_HPP
#define BOOST_FUSION_ADAPTED_ADT_ADAPT_ASSOC_ADT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/empty.hpp>
#include <boost/preprocessor/tuple/elem.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_ADAPT_ASSOC_ADT_NAMED_HPP
#define BOOST_FUSION_ADAPTED_ADT_ADAPT_ASSOC_ADT_NAMED_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/adt/adapt_assoc_adt.hpp>
#include <boost/fusion/adapted/struct/detail/proxy_type.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_DETAIL_ADAPT_BASE_HPP
#define BOOST_FUSION_ADAPTED_ADT_DETAIL_ADAPT_BASE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/control/if.hpp>
#include <boost/preprocessor/seq/seq.hpp>
#include <boost/preprocessor/seq/elem.hpp>
@ -39,6 +40,7 @@
> \
{ \
template<class Val> \
BOOST_FUSION_GPU_ENABLED \
static void \
boost_fusion_adapt_adt_impl_set( \
BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ)& obj, \
@ -47,6 +49,7 @@
BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 3, ATTRIBUTE); \
} \
\
BOOST_FUSION_GPU_ENABLED \
static BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 0, ATTRIBUTE) \
boost_fusion_adapt_adt_impl_get( \
BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ)& obj) \
@ -54,6 +57,7 @@
return BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 2, ATTRIBUTE); \
} \
\
BOOST_FUSION_GPU_ENABLED \
static BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 1, ATTRIBUTE) \
boost_fusion_adapt_adt_impl_get( \
BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ) const& obj) \
@ -73,12 +77,14 @@
{ \
typedef BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 1, ATTRIBUTE) type; \
\
BOOST_FUSION_GPU_ENABLED \
explicit \
adt_attribute_proxy( \
BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ) const& o) \
: obj(&o) \
{} \
\
BOOST_FUSION_GPU_ENABLED \
type get() const \
{ \
return access::adt_attribute_access< \
@ -87,6 +93,7 @@
>::boost_fusion_adapt_adt_impl_get(*obj); \
} \
\
BOOST_FUSION_GPU_ENABLED \
operator type() const \
{ \
return get(); \
@ -106,6 +113,7 @@
{ \
typedef BOOST_PP_TUPLE_ELEM(ATTRIBUTE_TUPEL_SIZE, 0, ATTRIBUTE) type; \
\
BOOST_FUSION_GPU_ENABLED \
explicit \
adt_attribute_proxy( \
BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ)& o) \
@ -113,6 +121,7 @@
{} \
\
template<class Val> \
BOOST_FUSION_GPU_ENABLED \
adt_attribute_proxy& \
operator=(Val const& val) \
{ \
@ -123,6 +132,7 @@
return *this; \
} \
\
BOOST_FUSION_GPU_ENABLED \
type get() const \
{ \
return access::adt_attribute_access< \
@ -131,6 +141,7 @@
>::boost_fusion_adapt_adt_impl_get(*obj); \
} \
\
BOOST_FUSION_GPU_ENABLED \
operator type() const \
{ \
return get(); \
@ -170,6 +181,7 @@
> \
type; \
\
BOOST_FUSION_GPU_ENABLED \
static type \
call(Seq& obj) \
{ \

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_ADT_DETAIL_EXTENSION_HPP
#define BOOST_FUSION_ADAPTED_ADT_DETAIL_EXTENSION_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/remove_const.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include <boost/fusion/support/as_const.hpp>
@ -29,6 +30,7 @@ namespace boost { namespace fusion
{
// Overload as_const() to unwrap adt_attribute_proxy.
template <typename T, int N, bool Const>
BOOST_FUSION_GPU_ENABLED
typename adt_attribute_proxy<T, N, Const>::type as_const(const adt_attribute_proxy<T, N, Const>& proxy)
{
return proxy.get();

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_AT_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_AT_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/add_reference.hpp>
#include <boost/type_traits/remove_extent.hpp>
@ -26,6 +27,7 @@ namespace boost { namespace fusion { namespace extension
add_reference<typename remove_extent<Seq>::type>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_BEGIN_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_BEGIN_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/basic_iterator.hpp>
namespace boost { namespace fusion { namespace extension
@ -30,6 +31,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_DEREF_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_DEREF_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/add_reference.hpp>
#include <boost/type_traits/remove_extent.hpp>
@ -28,6 +29,7 @@ namespace boost { namespace fusion { namespace extension
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(It const& it)
{

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_END_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_END_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/basic_iterator.hpp>
#include <boost/type_traits/rank.hpp>
#include <boost/type_traits/extent.hpp>
@ -32,6 +33,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_IS_SEQUENCE_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_IS_SEQUENCE_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_IS_VIEW_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_IS_VIEW_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_SIZE_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_SIZE_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/rank.hpp>
#include <boost/type_traits/extent.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_TAG_OF_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_TAG_OF_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/tag_of_fwd.hpp>
#include <cstddef>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_VALUE_AT_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_VALUE_AT_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/remove_extent.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_ARRAY_VALUE_OF_IMPL_HPP
#define BOOST_FUSION_ADAPTED_ARRAY_VALUE_OF_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/remove_extent.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_BOOST_ARRAY_27122005_1035)
#define BOOST_FUSION_BOOST_ARRAY_27122005_1035
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_array/array_iterator.hpp>
#include <boost/fusion/adapted/boost_array/tag_of.hpp>
#include <boost/fusion/adapted/boost_array/detail/is_view_impl.hpp>

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_ARRAY_ITERATOR_26122005_2250)
#define BOOST_FUSION_ARRAY_ITERATOR_26122005_2250
#include <boost/fusion/support/config.hpp>
#include <cstddef>
#include <boost/config.hpp>
#include <boost/mpl/int.hpp>
@ -31,6 +32,7 @@ namespace boost { namespace fusion
typedef mpl::int_<Pos> index;
typedef Array array_type;
BOOST_FUSION_GPU_ENABLED
array_iterator(Array& a)
: array(a) {}
@ -55,6 +57,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const & it)
{
@ -69,6 +72,7 @@ namespace boost { namespace fusion
typedef typename Iterator::array_type array_type;
typedef array_iterator<array_type, index::value + N::value> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& i)
{
@ -91,6 +95,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(I1 const&, I2 const&)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_AT_IMPL_27122005_1241)
#define BOOST_FUSION_AT_IMPL_27122005_1241
#include <boost/fusion/support/config.hpp>
#include <boost/type_traits/is_const.hpp>
#include <boost/mpl/if.hpp>
@ -32,6 +33,7 @@ namespace boost { namespace fusion {
typename Sequence::const_reference,
typename Sequence::reference>::type type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& seq)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_BEGIN_IMPL_27122005_1117)
#define BOOST_FUSION_BEGIN_IMPL_27122005_1117
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_array/array_iterator.hpp>
namespace boost { namespace fusion {
@ -27,6 +28,7 @@ namespace boost { namespace fusion {
{
typedef array_iterator<Sequence, 0> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& v)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044)
#define BOOST_FUSION_CATEGORY_OF_IMPL_27122005_1044
#include <boost/fusion/support/config.hpp>
#include <boost/config/no_tr1/utility.hpp>
namespace boost { namespace fusion {

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_END_IMPL_27122005_1120)
#define BOOST_FUSION_END_IMPL_27122005_1120
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_array/array_iterator.hpp>
namespace boost { namespace fusion {
@ -27,6 +28,7 @@ namespace boost { namespace fusion {
{
typedef array_iterator<Sequence, Sequence::static_size> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& v)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_IS_SEQUENCE_IMPL_27122005_1648)
#define BOOST_FUSION_IS_SEQUENCE_IMPL_27122005_1648
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion {

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_IS_VIEW_IMPL_27042006_2221)
#define BOOST_FUSION_IS_VIEW_IMPL_27042006_2221
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(FUSION_SEQUENCE_TAG_OF_27122005_1030)
#define FUSION_SEQUENCE_TAG_OF_27122005_1030
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/tag_of_fwd.hpp>
#include <cstddef>

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_BOOST_TUPLE_09272006_0732)
#define BOOST_FUSION_BOOST_TUPLE_09272006_0732
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_tuple/tag_of.hpp>
#include <boost/fusion/adapted/boost_tuple/detail/is_view_impl.hpp>
#include <boost/fusion/adapted/boost_tuple/detail/is_sequence_impl.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_BOOST_TUPLE_ITERATOR_09262006_1851)
#define FUSION_BOOST_TUPLE_ITERATOR_09262006_1851
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/iterator_facade.hpp>
#include <boost/type_traits/is_const.hpp>
#include <boost/type_traits/add_const.hpp>
@ -47,6 +48,7 @@ namespace boost { namespace fusion
{
typedef Cons cons_type;
BOOST_FUSION_GPU_ENABLED
explicit boost_tuple_iterator(Cons& in_cons)
: cons(in_cons) {}
Cons& cons;
@ -67,6 +69,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& iter)
{
@ -88,6 +91,7 @@ namespace boost { namespace fusion
>::type>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& iter)
{
@ -121,6 +125,7 @@ namespace boost { namespace fusion
lazy_next_distance<I1, I2>
>::type type;
BOOST_FUSION_GPU_ENABLED
static type
call(I1 const&, I2 const&)
{
@ -156,6 +161,7 @@ namespace boost { namespace fusion
: boost_tuple_null_iterator<tuples::null_type>
{
template <typename Cons>
BOOST_FUSION_GPU_ENABLED
explicit boost_tuple_iterator(Cons const&) {}
};
@ -164,6 +170,7 @@ namespace boost { namespace fusion
: boost_tuple_null_iterator<tuples::null_type const>
{
template <typename Cons>
BOOST_FUSION_GPU_ENABLED
explicit boost_tuple_iterator(Cons const&) {}
};
@ -172,6 +179,7 @@ namespace boost { namespace fusion
: boost_tuple_null_iterator<tuples::tuple<> >
{
template <typename Cons>
BOOST_FUSION_GPU_ENABLED
explicit boost_tuple_iterator(Cons const&) {}
};
@ -180,6 +188,7 @@ namespace boost { namespace fusion
: boost_tuple_null_iterator<tuples::tuple<> const>
{
template <typename Cons>
BOOST_FUSION_GPU_ENABLED
explicit boost_tuple_iterator(Cons const&) {}
};
}}

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_AT_IMPL_09262006_1920)
#define BOOST_FUSION_AT_IMPL_09262006_1920
#include <boost/fusion/support/config.hpp>
#include <boost/tuple/tuple.hpp>
#include <boost/mpl/if.hpp>
@ -37,6 +38,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& seq)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_BEGIN_IMPL_09272006_0719)
#define BOOST_FUSION_BEGIN_IMPL_09272006_0719
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp>
namespace boost { namespace fusion
@ -26,6 +27,7 @@ namespace boost { namespace fusion
{
typedef boost_tuple_iterator<Sequence> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& v)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_END_IMPL_09272006_0721)
#define BOOST_FUSION_END_IMPL_09272006_0721
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp>
#include <boost/mpl/if.hpp>
#include <boost/type_traits/is_const.hpp>
@ -41,6 +42,7 @@ namespace boost { namespace fusion
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& seq)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_IS_SEQUENCE_IMPL_09272006_0726)
#define BOOST_FUSION_IS_SEQUENCE_IMPL_09272006_0726
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_IS_VIEW_IMPL_09272006_0725)
#define BOOST_FUSION_IS_VIEW_IMPL_09272006_0725
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_SIZE_IMPL_09272006_0724)
#define BOOST_FUSION_SIZE_IMPL_09272006_0724
#include <boost/fusion/support/config.hpp>
#include <boost/tuple/tuple.hpp>
#include <boost/mpl/int.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_VALUE_AT_IMPL_09262006_1926)
#define BOOST_FUSION_VALUE_AT_IMPL_09262006_1926
#include <boost/fusion/support/config.hpp>
#include <boost/tuple/tuple.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_TAG_OF_09262006_1900)
#define BOOST_FUSION_TAG_OF_09262006_1900
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/tag_of_fwd.hpp>
namespace boost { namespace tuples

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_MPL_31122005_1152)
#define BOOST_FUSION_MPL_31122005_1152
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/mpl/detail/begin_impl.hpp>
#include <boost/fusion/adapted/mpl/detail/end_impl.hpp>
#include <boost/fusion/adapted/mpl/detail/is_sequence_impl.hpp>

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_AT_IMPL_31122005_1642)
#define BOOST_FUSION_AT_IMPL_31122005_1642
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/at.hpp>
namespace boost { namespace fusion
@ -27,6 +28,7 @@ namespace boost { namespace fusion
{
typedef typename mpl::at<Sequence, N>::type type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_BEGIN_IMPL_31122005_1209)
#define BOOST_FUSION_BEGIN_IMPL_31122005_1209
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/mpl/mpl_iterator.hpp>
#include <boost/mpl/begin.hpp>
#include <boost/type_traits/remove_const.hpp>
@ -32,6 +33,7 @@ namespace boost { namespace fusion {
>::type iterator;
typedef mpl_iterator<iterator> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_CATEGORY_OF_IMPL_20060217_2141)
#define BOOST_FUSION_CATEGORY_OF_IMPL_20060217_2141
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/detail/mpl_iterator_category.hpp>
#include <boost/mpl/begin_end.hpp>
#include <boost/mpl/is_sequence.hpp>

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_EMPTY_IMPL_31122005_1554)
#define BOOST_FUSION_EMPTY_IMPL_31122005_1554
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/empty.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_END_IMPL_31122005_1237)
#define BOOST_FUSION_END_IMPL_31122005_1237
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/mpl/mpl_iterator.hpp>
#include <boost/mpl/end.hpp>
#include <boost/type_traits/add_const.hpp>
@ -32,6 +33,7 @@ namespace boost { namespace fusion
>::type iterator;
typedef mpl_iterator<iterator> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence)
{

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_HAS_KEY_IMPL_31122005_1647)
#define BOOST_FUSION_HAS_KEY_IMPL_31122005_1647
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/has_key.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_IS_SEQUENCE_IMPL_31122005_1505)
#define BOOST_FUSION_IS_SEQUENCE_IMPL_31122005_1505
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_IS_VIEW_IMPL_03202006_0048)
#define BOOST_FUSION_IS_VIEW_IMPL_03202006_0048
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_SIZE_IMPL_31122005_1508)
#define BOOST_FUSION_SIZE_IMPL_31122005_1508
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/size.hpp>
namespace boost { namespace fusion

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_VALUE_AT_IMPL_31122005_1621)
#define BOOST_FUSION_VALUE_AT_IMPL_31122005_1621
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/at.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_MPL_ITERATOR_05052005_0731)
#define FUSION_MPL_ITERATOR_05052005_0731
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/detail/mpl_iterator_category.hpp>
#include <boost/fusion/iterator/iterator_facade.hpp>
#include <boost/type_traits/remove_const.hpp>
@ -37,6 +38,7 @@ namespace boost { namespace fusion
typename Iterator::iterator_type>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator)
{
@ -51,6 +53,7 @@ namespace boost { namespace fusion
typename mpl::next<typename Iterator::iterator_type>::type>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator)
{
@ -65,6 +68,7 @@ namespace boost { namespace fusion
typename mpl::prior<typename Iterator::iterator_type>::type>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator)
{
@ -79,6 +83,7 @@ namespace boost { namespace fusion
typename mpl::advance<typename Iterator::iterator_type, N>::type>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& /*i*/)
{
@ -99,6 +104,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(I1 const&, I2 const&)
{

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STD_PAIR_HPP
#define BOOST_FUSION_ADAPTED_STD_PAIR_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_struct.hpp>
#include <utility>

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_BOOST_TUPLE_09242011_1744)
#define BOOST_FUSION_BOOST_TUPLE_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/std_tuple/detail/is_view_impl.hpp>
#include <boost/fusion/adapted/std_tuple/detail/is_sequence_impl.hpp>
#include <boost/fusion/adapted/std_tuple/detail/category_of_impl.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_AT_IMPL_09242011_1744)
#define BOOST_FUSION_AT_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <tuple>
#include <utility>
#include <boost/mpl/if.hpp>
@ -39,6 +40,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& seq)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_BEGIN_IMPL_09242011_1744)
#define BOOST_FUSION_BEGIN_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/std_tuple/std_tuple_iterator.hpp>
namespace boost { namespace fusion
@ -26,6 +27,7 @@ namespace boost { namespace fusion
{
typedef std_tuple_iterator<Sequence, 0> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& v)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_END_IMPL_09242011_1744)
#define BOOST_FUSION_END_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/std_tuple/std_tuple_iterator.hpp>
#include <boost/type_traits/remove_const.hpp>
#include <tuple>
@ -30,6 +31,7 @@ namespace boost { namespace fusion
static int const size = std::tuple_size<seq_type>::value;
typedef std_tuple_iterator<Sequence, size> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Sequence& v)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_IS_SEQUENCE_IMPL_09242011_1744)
#define BOOST_FUSION_IS_SEQUENCE_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_IS_VIEW_IMPL_09242011_1744)
#define BOOST_FUSION_IS_VIEW_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_SIZE_IMPL_09242011_1744)
#define BOOST_FUSION_SIZE_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <tuple>
#include <boost/mpl/int.hpp>
#include <boost/type_traits/remove_const.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_VALUE_AT_IMPL_09242011_1744)
#define BOOST_FUSION_VALUE_AT_IMPL_09242011_1744
#include <boost/fusion/support/config.hpp>
#include <tuple>
namespace boost { namespace fusion

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_STD_TUPLE_ITERATOR_09112011_1905)
#define FUSION_STD_TUPLE_ITERATOR_09112011_1905
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/iterator_facade.hpp>
#include <boost/type_traits/is_const.hpp>
#include <boost/type_traits/remove_const.hpp>
@ -35,7 +36,7 @@ namespace boost { namespace fusion
typename add_const<Tuple>::type, Index>
identity;
explicit std_tuple_iterator(Tuple& tuple)
BOOST_FUSION_GPU_ENABLED explicit std_tuple_iterator(Tuple& tuple)
: tuple(tuple) {}
Tuple& tuple;
@ -57,6 +58,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& iter)
{
@ -71,6 +73,7 @@ namespace boost { namespace fusion
typedef typename Iterator::tuple_type tuple_type;
typedef std_tuple_iterator<tuple_type, index+N::value> type;
BOOST_FUSION_GPU_ENABLED
static type
call(Iterator const& i)
{
@ -93,6 +96,7 @@ namespace boost { namespace fusion
{
typedef mpl::int_<Last::index-First::index> type;
BOOST_FUSION_GPU_ENABLED
static type
call(First const&, Last const&)
{

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_TAG_OF_09112011_1842)
#define BOOST_FUSION_TAG_OF_09112011_1842
#include <boost/fusion/support/config.hpp>
#include <tuple>
#include <boost/fusion/support/tag_of_fwd.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_assoc_struct_named.hpp>
#include <boost/fusion/adapted/struct/adapt_assoc_struct.hpp>
#include <boost/fusion/adapted/struct/adapt_struct_named.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_ADAPT_ASSOC_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_ADAPT_ASSOC_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/empty.hpp>
#include <boost/preprocessor/tuple/elem.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_ADAPT_ASSOC_STRUCT_NAMED_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_ADAPT_ASSOC_STRUCT_NAMED_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_assoc_struct.hpp>
#include <boost/fusion/adapted/struct/detail/proxy_type.hpp>

View File

@ -9,6 +9,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_ADAPT_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_ADAPT_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/empty.hpp>
#include <boost/type_traits/add_reference.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_ADAPT_STRUCT_NAMED_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_ADAPT_STRUCT_NAMED_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_struct.hpp>
#include <boost/fusion/adapted/struct/detail/proxy_type.hpp>
#include <boost/preprocessor/empty.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DEFINE_ASSOC_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DEFINE_ASSOC_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_assoc_struct.hpp>
#include <boost/fusion/adapted/struct/detail/define_struct.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DEFINE_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DEFINE_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_struct.hpp>
#include <boost/fusion/adapted/struct/detail/define_struct.hpp>

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DEFINE_STRUCT_INLINE_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DEFINE_STRUCT_INLINE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/adapt_struct.hpp>
#include <boost/fusion/adapted/struct/detail/define_struct_inline.hpp>

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_ADAPT_BASE_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_ADAPT_BASE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/config.hpp>
#include <boost/fusion/support/tag_of_fwd.hpp>
@ -137,6 +138,7 @@
>::type \
type; \
\
BOOST_FUSION_GPU_ENABLED \
static type \
call(Seq& seq) \
{ \
@ -156,6 +158,7 @@
{ \
typedef char const* type; \
\
BOOST_FUSION_GPU_ENABLED \
static type \
call() \
{ \

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_AT_IMPL_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_AT_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/int.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_BEGIN_IMPL_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_BEGIN_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/basic_iterator.hpp>
namespace boost { namespace fusion { namespace extension
@ -32,6 +33,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{
@ -55,6 +57,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_DETAIL_STRUCT_DEFINE_STRUCT_HPP
#define BOOST_FUSION_ADAPTED_DETAIL_STRUCT_DEFINE_STRUCT_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>
#include <boost/fusion/iterator/deref.hpp>
@ -61,6 +62,7 @@
ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
template<typename Seq> \
BOOST_FUSION_GPU_ENABLED \
self_type& \
operator=(Seq const& seq) \
{ \
@ -119,6 +121,7 @@
ATTRIBUTE_TUPEL_SIZE, \
ATTRIBUTES_SEQ) \
\
BOOST_FUSION_GPU_ENABLED \
NAME() \
: BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
@ -127,6 +130,7 @@
ATTRIBUTES_SEQ) \
{} \
\
BOOST_FUSION_GPU_ENABLED \
NAME(self_type const& other_self) \
: BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
@ -136,6 +140,7 @@
{} \
\
template<typename Seq> \
BOOST_FUSION_GPU_ENABLED \
NAME(Seq const& seq \
BOOST_PP_IF( \
BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(ATTRIBUTES_SEQ)), \
@ -155,6 +160,7 @@
#define BOOST_FUSION_DEFINE_STRUCT_CTOR_1( \
NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
BOOST_FUSION_GPU_ENABLED \
explicit \
NAME(boost::call_traits< \
BOOST_PP_TUPLE_ELEM( \
@ -167,6 +173,7 @@
#define BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_1( \
TEMPLATE_PARAMS_SEQ, NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
BOOST_FUSION_GPU_ENABLED \
explicit \
NAME(typename boost::call_traits< \
typename boost::fusion::detail::get_first_arg< \
@ -203,6 +210,7 @@
#define BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_N( \
TEMPLATE_PARAMS_SEQ, NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
BOOST_FUSION_GPU_ENABLED \
NAME(BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
BOOST_FUSION_DEFINE_TPL_STRUCT_CTOR_ARG_I, \
@ -230,6 +238,7 @@
#define BOOST_FUSION_DEFINE_STRUCT_CTOR_N( \
NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
BOOST_FUSION_GPU_ENABLED \
NAME(BOOST_PP_SEQ_FOR_EACH_I_R( \
1, \
BOOST_FUSION_DEFINE_STRUCT_CTOR_ARG_I, \
@ -271,10 +280,12 @@
NAME, ATTRIBUTES_SEQ, ATTRIBUTE_TUPEL_SIZE) \
\
template<typename Seq> \
BOOST_FUSION_GPU_ENABLED \
NAME(Seq const&) \
{} \
\
template<typename Seq> \
BOOST_FUSION_GPU_ENABLED \
self_type& \
operator=(Seq const& seq) \
{ \

View File

@ -8,6 +8,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_DEFINE_STRUCT_INLINE_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_DEFINE_STRUCT_INLINE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/config.hpp>
#include <boost/fusion/support/category_of.hpp>
#include <boost/fusion/sequence/sequence_facade.hpp>
@ -112,6 +113,7 @@
struct deref<SPEC_TYPE, N> > \
{ \
typedef typename boost_fusion_detail_Sq::t##N##_type TYPE_QUAL& type; \
BOOST_FUSION_GPU_ENABLED \
static type call(CALL_ARG_TYPE, N> const& iter) \
{ \
return iter.seq_.BOOST_PP_TUPLE_ELEM(2, 1, ATTRIBUTE); \
@ -161,6 +163,7 @@
typename boost_fusion_detail_Sq::t##N##_type& \
>::type type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_Sq& sq) \
{ \
return sq. BOOST_PP_TUPLE_ELEM(2, 1, ATTRIBUTE); \
@ -205,6 +208,7 @@
result_raw_type \
>::type type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(iterator_raw_type const& iter) \
{ \
return boost::fusion::at_c<index>(iter.ref_vec); \
@ -332,6 +336,7 @@
typedef boost::mpl::int_<N> index; \
typedef boost_fusion_detail_Seq sequence_type; \
\
BOOST_FUSION_GPU_ENABLED \
BOOST_FUSION_ITERATOR_NAME(NAME)(boost_fusion_detail_Seq& seq) \
: seq_(seq) \
BOOST_FUSION_DEFINE_ITERATOR_WKND_INIT_LIST_ENTRIES( \
@ -354,6 +359,7 @@
boost_fusion_detail_It::index::value + 1 \
> type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_It const& it) \
{ \
return type(it.seq_); \
@ -368,6 +374,7 @@
boost_fusion_detail_It::index::value - 1 \
> type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_It const& it) \
{ \
return type(it.seq_); \
@ -385,6 +392,7 @@
typename boost_fusion_detail_It1::index \
>::type type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_It1 const& it1, \
boost_fusion_detail_It2 const& it2) \
{ \
@ -404,6 +412,7 @@
+ boost_fusion_detail_M::value \
> type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_It const& it) \
{ \
return type(it.seq_); \
@ -454,6 +463,7 @@
typedef BOOST_FUSION_ITERATOR_NAME(NAME)<boost_fusion_detail_Sq, 0> \
type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_Sq& sq) \
{ \
return type(sq); \
@ -468,6 +478,7 @@
ATTRIBUTES_SEQ_SIZE \
> type; \
\
BOOST_FUSION_GPU_ENABLED \
static type call(boost_fusion_detail_Sq& sq) \
{ \
return type(sq); \

View File

@ -28,6 +28,7 @@ namespace boost { namespace fusion { namespace extension
typedef typename impl::type type;
BOOST_FUSION_GPU_ENABLED
static
type
call(It const& it)

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_END_IMPL_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_END_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/iterator/basic_iterator.hpp>
namespace boost { namespace fusion { namespace extension
@ -32,6 +33,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{
@ -55,6 +57,7 @@ namespace boost { namespace fusion { namespace extension
>
type;
BOOST_FUSION_GPU_ENABLED
static type
call(Seq& seq)
{

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_EXTENSION_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_EXTENSION_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/category_of.hpp>
namespace boost { namespace fusion

View File

@ -10,6 +10,7 @@
#ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_IS_SEQUENCE_IMPL_HPP
#define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_IS_SEQUENCE_IMPL_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
namespace boost { namespace fusion { namespace extension

View File

@ -9,6 +9,7 @@
#ifndef BOOST_FUSION_ADAPTED_DETAIL_STRUCT_NAMESPACE_HPP
#define BOOST_FUSION_ADAPTED_DETAIL_STRUCT_NAMESPACE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/preprocessor/dec.hpp>
#include <boost/preprocessor/control/if.hpp>
#include <boost/preprocessor/seq/seq.hpp>

View File

@ -9,6 +9,7 @@
#ifndef BOOST_FUSION_ADAPTED_DETAIL_STRUCT_PROXY_TYPE_HPP
#define BOOST_FUSION_ADAPTED_DETAIL_STRUCT_PROXY_TYPE_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/adapted/struct/detail/namespace.hpp>
#define BOOST_FUSION_ADAPT_STRUCT_DEFINE_PROXY_TYPE_IMPL( \
@ -18,6 +19,7 @@
\
struct NAME \
{ \
BOOST_FUSION_GPU_ENABLED \
NAME(WRAPPED_TYPE& in_obj) \
: obj(in_obj) \
{} \

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_ALGORITHM_10022005_0549)
#define FUSION_ALGORITHM_10022005_0549
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration.hpp>
#include <boost/fusion/algorithm/query.hpp>
#include <boost/fusion/algorithm/transformation.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_ALGORITHM_AUXILIARY_02192011_0907)
#define FUSION_ALGORITHM_AUXILIARY_02192011_0907
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/auxiliary/copy.hpp>
#endif

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_COPY_02162011_2308)
#define FUSION_COPY_02162011_2308
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>
#include <boost/fusion/sequence/intrinsic/end.hpp>
#include <boost/fusion/sequence/intrinsic/size.hpp>
@ -33,12 +34,14 @@ namespace boost { namespace fusion
typedef typename result_of::end<Seq2>::type end2_type;
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const&, I2 const&, mpl::true_)
{
}
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const& src, I2 const& dest, mpl::false_)
{
@ -47,6 +50,7 @@ namespace boost { namespace fusion
}
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const& src, I2 const& dest)
{
@ -57,6 +61,7 @@ namespace boost { namespace fusion
}
template <typename Seq1, typename Seq2>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if_c<

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_MOVE_01192013_2225)
#define FUSION_MOVE_01192013_2225
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>
#include <boost/fusion/sequence/intrinsic/end.hpp>
#include <boost/fusion/sequence/intrinsic/size.hpp>
@ -33,12 +34,14 @@ namespace boost { namespace fusion
typedef typename result_of::end<Seq2>::type end2_type;
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const&, I2 const&, mpl::true_)
{
}
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const& src, I2 const& dest, mpl::false_)
{
@ -47,6 +50,7 @@ namespace boost { namespace fusion
}
template <typename I1, typename I2>
BOOST_FUSION_GPU_ENABLED
static void
call(I1 const& src, I2 const& dest)
{
@ -57,6 +61,7 @@ namespace boost { namespace fusion
}
template <typename Seq1, typename Seq2>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if_c<

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_ALGORITHM_ITERATION_10022005_0549)
#define FUSION_ALGORITHM_ITERATION_10022005_0549
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/accumulate.hpp>
#include <boost/fusion/algorithm/iteration/fold.hpp>
#include <boost/fusion/algorithm/iteration/for_each.hpp>

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_ACCUMULATE_09172005_1032)
#define FUSION_ACCUMULATE_09172005_1032
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/accumulate_fwd.hpp>
#include <boost/fusion/algorithm/iteration/fold.hpp>
#include <boost/fusion/support/is_sequence.hpp>
@ -25,6 +26,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
lazy_enable_if<
@ -37,6 +39,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
lazy_enable_if<

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_ACCUMULATE_FWD_HPP_INCLUDED)
#define BOOST_FUSION_ACCUMULATE_FWD_HPP_INCLUDED
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/is_sequence.hpp>
#include <boost/utility/enable_if.hpp>
@ -19,6 +20,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename
lazy_enable_if<
traits::is_sequence<Sequence>
@ -27,6 +29,7 @@ namespace boost { namespace fusion
accumulate(Sequence& seq, State const& state, F f);
template <typename Sequence, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename
lazy_enable_if<
traits::is_sequence<Sequence>

View File

@ -58,6 +58,7 @@ namespace boost { namespace fusion
struct BOOST_PP_CAT(unrolled_,BOOST_FUSION_FOLD_NAME)
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -103,6 +104,7 @@ namespace boost { namespace fusion
struct BOOST_PP_CAT(unrolled_,BOOST_FUSION_FOLD_NAME)<Result,3>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -133,6 +135,7 @@ namespace boost { namespace fusion
struct BOOST_PP_CAT(unrolled_,BOOST_FUSION_FOLD_NAME)<Result,2>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -150,6 +153,7 @@ namespace boost { namespace fusion
struct BOOST_PP_CAT(unrolled_,BOOST_FUSION_FOLD_NAME)<Result,1>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -162,6 +166,7 @@ namespace boost { namespace fusion
struct BOOST_PP_CAT(unrolled_,BOOST_FUSION_FOLD_NAME)<Result,0>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const&, F)
{
@ -340,6 +345,7 @@ namespace boost { namespace fusion
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(StateRef state, Seq& seq, F f)
{
@ -363,6 +369,7 @@ namespace boost { namespace fusion
{
typedef StateRef type;
BOOST_FUSION_GPU_ENABLED
static StateRef
call(StateRef state, Seq&, F)
{
@ -397,6 +404,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::BOOST_FUSION_FOLD_NAME<
Seq
, State const
@ -411,6 +419,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::BOOST_FUSION_FOLD_NAME<
Seq const
, State const
@ -425,6 +434,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::BOOST_FUSION_FOLD_NAME<
Seq
, State const
@ -439,6 +449,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::BOOST_FUSION_FOLD_NAME<
Seq const
, State const

View File

@ -7,6 +7,7 @@
#if !defined(FUSION_FOR_EACH_05052005_1028)
#define FUSION_FOR_EACH_05052005_1028
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>
#include <boost/fusion/sequence/intrinsic/end.hpp>
#include <boost/fusion/iterator/equal_to.hpp>
@ -20,12 +21,14 @@ namespace boost { namespace fusion {
namespace detail
{
template <typename First, typename Last, typename F>
BOOST_FUSION_GPU_ENABLED
inline void
for_each_linear(First const&, Last const&, F const&, mpl::true_)
{
}
template <typename First, typename Last, typename F>
BOOST_FUSION_GPU_ENABLED
inline void
for_each_linear(First const& first, Last const& last, F const& f, mpl::false_)
{
@ -36,6 +39,7 @@ namespace detail
template <typename Sequence, typename F, typename Tag>
BOOST_FUSION_GPU_ENABLED
inline void
for_each_dispatch(Sequence& seq, F const& f, Tag)
{
@ -52,6 +56,7 @@ namespace detail
struct for_each_unrolled
{
template<typename I0, typename F>
BOOST_FUSION_GPU_ENABLED
static void call(I0 const& i0, F const& f)
{
f(*i0);
@ -72,6 +77,7 @@ namespace detail
struct for_each_unrolled<3>
{
template<typename I0, typename F>
BOOST_FUSION_GPU_ENABLED
static void call(I0 const& i0, F const& f)
{
f(*i0);
@ -88,6 +94,7 @@ namespace detail
struct for_each_unrolled<2>
{
template<typename I0, typename F>
BOOST_FUSION_GPU_ENABLED
static void call(I0 const& i0, F const& f)
{
f(*i0);
@ -101,6 +108,7 @@ namespace detail
struct for_each_unrolled<1>
{
template<typename I0, typename F>
BOOST_FUSION_GPU_ENABLED
static void call(I0 const& i0, F const& f)
{
f(*i0);
@ -111,12 +119,14 @@ namespace detail
struct for_each_unrolled<0>
{
template<typename It, typename F>
BOOST_FUSION_GPU_ENABLED
static void call(It const&, F const&)
{
}
};
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline void
for_each_dispatch(Sequence& seq, F const& f, random_access_traversal_tag)
{
@ -126,6 +136,7 @@ namespace detail
}
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline void
for_each(Sequence& seq, F const& f, mpl::false_) // unsegmented implementation
{

View File

@ -24,6 +24,7 @@ namespace boost { namespace fusion
struct unrolled_fold
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -64,6 +65,7 @@ namespace boost { namespace fusion
struct unrolled_fold<Result,3>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -90,6 +92,7 @@ namespace boost { namespace fusion
struct unrolled_fold<Result,2>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -104,6 +107,7 @@ namespace boost { namespace fusion
struct unrolled_fold<Result,1>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -115,6 +119,7 @@ namespace boost { namespace fusion
struct unrolled_fold<Result,0>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const&, F)
{
@ -277,6 +282,7 @@ namespace boost { namespace fusion
, SeqSize
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(StateRef state, Seq& seq, F f)
{
@ -296,6 +302,7 @@ namespace boost { namespace fusion
struct fold_impl<0,StateRef,Seq,F>
{
typedef StateRef type;
BOOST_FUSION_GPU_ENABLED
static StateRef
call(StateRef state, Seq&, F)
{
@ -327,6 +334,7 @@ namespace boost { namespace fusion
{};
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::fold<
Seq
, State const
@ -340,6 +348,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::fold<
Seq const
, State const
@ -353,6 +362,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::fold<
Seq
, State const
@ -366,6 +376,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::fold<
Seq const
, State const

View File

@ -23,6 +23,7 @@ namespace boost { namespace fusion
struct unrolled_iter_fold
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -63,6 +64,7 @@ namespace boost { namespace fusion
struct unrolled_iter_fold<Result,3>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -89,6 +91,7 @@ namespace boost { namespace fusion
struct unrolled_iter_fold<Result,2>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -103,6 +106,7 @@ namespace boost { namespace fusion
struct unrolled_iter_fold<Result,1>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -114,6 +118,7 @@ namespace boost { namespace fusion
struct unrolled_iter_fold<Result,0>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const&, F)
{
@ -276,6 +281,7 @@ namespace boost { namespace fusion
, SeqSize
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(StateRef state, Seq& seq, F f)
{
@ -295,6 +301,7 @@ namespace boost { namespace fusion
struct iter_fold_impl<0,StateRef,Seq,F>
{
typedef StateRef type;
BOOST_FUSION_GPU_ENABLED
static StateRef
call(StateRef state, Seq&, F)
{
@ -326,6 +333,7 @@ namespace boost { namespace fusion
{};
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::iter_fold<
Seq
, State const
@ -339,6 +347,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::iter_fold<
Seq const
, State const
@ -352,6 +361,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::iter_fold<
Seq
, State const
@ -365,6 +375,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::iter_fold<
Seq const
, State const

View File

@ -23,6 +23,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_fold
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -63,6 +64,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_fold<Result,3>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -89,6 +91,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_fold<Result,2>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -103,6 +106,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_fold<Result,1>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -114,6 +118,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_fold<Result,0>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const&, F)
{
@ -276,6 +281,7 @@ namespace boost { namespace fusion
, SeqSize
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(StateRef state, Seq& seq, F f)
{
@ -295,6 +301,7 @@ namespace boost { namespace fusion
struct reverse_fold_impl<0,StateRef,Seq,F>
{
typedef StateRef type;
BOOST_FUSION_GPU_ENABLED
static StateRef
call(StateRef state, Seq&, F)
{
@ -326,6 +333,7 @@ namespace boost { namespace fusion
{};
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_fold<
Seq
, State const
@ -339,6 +347,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_fold<
Seq const
, State const
@ -352,6 +361,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_fold<
Seq
, State const
@ -365,6 +375,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_fold<
Seq const
, State const

View File

@ -23,6 +23,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_iter_fold
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -63,6 +64,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_iter_fold<Result,3>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -89,6 +91,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_iter_fold<Result,2>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -103,6 +106,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_iter_fold<Result,1>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const& it0,F f)
{
@ -114,6 +118,7 @@ namespace boost { namespace fusion
struct unrolled_reverse_iter_fold<Result,0>
{
template<typename State, typename It0, typename F>
BOOST_FUSION_GPU_ENABLED
static Result
call(State const& state,It0 const&, F)
{
@ -276,6 +281,7 @@ namespace boost { namespace fusion
, SeqSize
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type
call(StateRef state, Seq& seq, F f)
{
@ -295,6 +301,7 @@ namespace boost { namespace fusion
struct reverse_iter_fold_impl<0,StateRef,Seq,F>
{
typedef StateRef type;
BOOST_FUSION_GPU_ENABLED
static StateRef
call(StateRef state, Seq&, F)
{
@ -326,6 +333,7 @@ namespace boost { namespace fusion
{};
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_iter_fold<
Seq
, State const
@ -339,6 +347,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_iter_fold<
Seq const
, State const
@ -352,6 +361,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_iter_fold<
Seq
, State const
@ -365,6 +375,7 @@ namespace boost { namespace fusion
f);
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
inline typename result_of::reverse_iter_fold<
Seq const
, State const

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_FOLD_S_HPP_INCLUDED)
#define BOOST_FUSION_FOLD_S_HPP_INCLUDED
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/fold_fwd.hpp>
#include <boost/fusion/support/segmented_fold_until.hpp>
@ -15,6 +16,7 @@ namespace boost { namespace fusion { namespace detail
template <typename Fun>
struct segmented_fold_fun
{
BOOST_FUSION_GPU_ENABLED
explicit segmented_fold_fun(Fun const& f)
: fun(f)
{}
@ -27,6 +29,7 @@ namespace boost { namespace fusion { namespace detail
typedef typename result_of::fold<Sequence, State, Fun>::type type;
typedef mpl::true_ continue_type;
BOOST_FUSION_GPU_ENABLED
static type call(Sequence& seq, State const& state, Context const&, segmented_fold_fun const& fun)
{
return fusion::fold(seq, state, fun.fun);
@ -49,6 +52,7 @@ namespace boost { namespace fusion { namespace detail
>::type
type;
BOOST_FUSION_GPU_ENABLED
static type call(State& state, Sequence& seq, Fun fun)
{
return fusion::segmented_fold_until(seq, state, segmented_fold_fun<Fun>(fun));

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_SEGMENTED_FOR_EACH_HPP_INCLUDED)
#define BOOST_FUSION_SEGMENTED_FOR_EACH_HPP_INCLUDED
#include <boost/fusion/support/config.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/fusion/support/void.hpp>
#include <boost/fusion/algorithm/iteration/for_each_fwd.hpp>
@ -17,6 +18,7 @@ namespace boost { namespace fusion { namespace detail
template <typename Fun>
struct segmented_for_each_fun
{
BOOST_FUSION_GPU_ENABLED
explicit segmented_for_each_fun(Fun const& f)
: fun(f)
{}
@ -29,6 +31,7 @@ namespace boost { namespace fusion { namespace detail
typedef void_ type;
typedef mpl::true_ continue_type;
BOOST_FUSION_GPU_ENABLED
static type call(Sequence& seq, State const&, Context const&, segmented_for_each_fun const& fun)
{
fusion::for_each(seq, fun.fun);
@ -38,6 +41,7 @@ namespace boost { namespace fusion { namespace detail
};
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline void
for_each(Sequence& seq, F const& f, mpl::true_) // segmented implementation
{

View File

@ -9,6 +9,7 @@
#ifndef BOOST_FUSION_ALGORITHM_ITERATION_FOLD_HPP
#define BOOST_FUSION_ALGORITHM_ITERATION_FOLD_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/fold_fwd.hpp>
#include <boost/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>

View File

@ -17,6 +17,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::fold<
Seq
, State const
@ -25,6 +26,7 @@ namespace boost { namespace fusion
fold(Seq& seq, State const& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::fold<
Seq const
, State const
@ -33,6 +35,7 @@ namespace boost { namespace fusion
fold(Seq const& seq, State const& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::fold<
Seq
, State const
@ -41,6 +44,7 @@ namespace boost { namespace fusion
fold(Seq& seq, State& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::fold<
Seq const
, State const

View File

@ -8,6 +8,7 @@
#if !defined(BOOST_FUSION_FOR_EACH_20070527_0943)
#define BOOST_FUSION_FOR_EACH_20070527_0943
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/detail/for_each.hpp>
#include <boost/fusion/algorithm/iteration/detail/segmented_for_each.hpp>
#include <boost/fusion/support/is_segmented.hpp>
@ -26,6 +27,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if<
@ -38,6 +40,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if<

View File

@ -7,6 +7,7 @@
#if !defined(BOOST_FUSION_FOR_EACH_FWD_HPP_INCLUDED)
#define BOOST_FUSION_FOR_EACH_FWD_HPP_INCLUDED
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/support/is_sequence.hpp>
#include <boost/utility/enable_if.hpp>
@ -19,6 +20,7 @@ namespace boost { namespace fusion
}
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if<
@ -28,6 +30,7 @@ namespace boost { namespace fusion
for_each(Sequence& seq, F const& f);
template <typename Sequence, typename F>
BOOST_FUSION_GPU_ENABLED
inline
typename
enable_if<

View File

@ -9,6 +9,7 @@
#ifndef BOOST_FUSION_ALGORITHM_ITERATION_ITER_FOLD_HPP
#define BOOST_FUSION_ALGORITHM_ITERATION_ITER_FOLD_HPP
#include <boost/fusion/support/config.hpp>
#include <boost/fusion/algorithm/iteration/iter_fold_fwd.hpp>
#include <boost/config.hpp>
#include <boost/fusion/sequence/intrinsic/begin.hpp>

View File

@ -17,6 +17,7 @@ namespace boost { namespace fusion
}
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::iter_fold<
Seq
, State const
@ -25,6 +26,7 @@ namespace boost { namespace fusion
iter_fold(Seq& seq, State const& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::iter_fold<
Seq const
, State const
@ -33,6 +35,7 @@ namespace boost { namespace fusion
iter_fold(Seq const& seq, State const& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::iter_fold<
Seq
, State const
@ -41,6 +44,7 @@ namespace boost { namespace fusion
iter_fold(Seq& seq, State& state, F f);
template<typename Seq, typename State, typename F>
BOOST_FUSION_GPU_ENABLED
typename result_of::iter_fold<
Seq const
, State const

Some files were not shown because too many files have changed in this diff Show More