summaryrefslogtreecommitdiff
path: root/boost/fusion/functional/invocation/invoke_procedure.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/fusion/functional/invocation/invoke_procedure.hpp')
-rw-r--r--boost/fusion/functional/invocation/invoke_procedure.hpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/boost/fusion/functional/invocation/invoke_procedure.hpp b/boost/fusion/functional/invocation/invoke_procedure.hpp
index ddb5e5065d..bd3e49b9d0 100644
--- a/boost/fusion/functional/invocation/invoke_procedure.hpp
+++ b/boost/fusion/functional/invocation/invoke_procedure.hpp
@@ -47,9 +47,11 @@ namespace boost { namespace fusion
}
template <typename Function, class Sequence>
+ BOOST_FUSION_GPU_ENABLED
inline void invoke_procedure(Function, Sequence &);
template <typename Function, class Sequence>
+ BOOST_FUSION_GPU_ENABLED
inline void invoke_procedure(Function, Sequence const &);
//----- ---- --- -- - - - -
@@ -75,6 +77,7 @@ namespace boost { namespace fusion
}
template <typename Function, class Sequence>
+ BOOST_FUSION_GPU_ENABLED
inline void invoke_procedure(Function f, Sequence & s)
{
detail::invoke_procedure_impl<
@@ -83,6 +86,7 @@ namespace boost { namespace fusion
}
template <typename Function, class Sequence>
+ BOOST_FUSION_GPU_ENABLED
inline void invoke_procedure(Function f, Sequence const & s)
{
detail::invoke_procedure_impl<
@@ -109,6 +113,7 @@ namespace boost { namespace fusion
#if N > 0
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & s)
{
f(BOOST_PP_ENUM(N,M,~));
@@ -116,6 +121,7 @@ namespace boost { namespace fusion
#else
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & /*s*/)
{
f();
@@ -129,6 +135,7 @@ namespace boost { namespace fusion
template <typename Function, class Sequence>
struct invoke_procedure_impl<Function,Sequence,N,true,true>
{
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & s)
{
(that_ptr<typename mpl::front<
@@ -151,6 +158,7 @@ namespace boost { namespace fusion
#if N > 0
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & s)
{
typedef typename result_of::begin<Sequence>::type I0;
@@ -160,6 +168,7 @@ namespace boost { namespace fusion
}
#else
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & /*s*/)
{
f();
@@ -173,6 +182,7 @@ namespace boost { namespace fusion
template <typename Function, class Sequence>
struct invoke_procedure_impl<Function,Sequence,N,true,false>
{
+ BOOST_FUSION_GPU_ENABLED
static inline void call(Function & f, Sequence & s)
{
typedef typename result_of::begin<Sequence>::type I0;