diff options
Diffstat (limited to 'boost/fusion/functional/invocation/invoke_procedure.hpp')
-rw-r--r-- | boost/fusion/functional/invocation/invoke_procedure.hpp | 10 |
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; |