diff options
Diffstat (limited to 'boost/fusion/adapted/adt')
-rw-r--r-- | boost/fusion/adapted/adt/adapt_adt.hpp | 1 | ||||
-rw-r--r-- | boost/fusion/adapted/adt/adapt_adt_named.hpp | 1 | ||||
-rw-r--r-- | boost/fusion/adapted/adt/adapt_assoc_adt.hpp | 1 | ||||
-rw-r--r-- | boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp | 1 | ||||
-rw-r--r-- | boost/fusion/adapted/adt/detail/adapt_base.hpp | 12 | ||||
-rw-r--r-- | boost/fusion/adapted/adt/detail/extension.hpp | 10 |
6 files changed, 22 insertions, 4 deletions
diff --git a/boost/fusion/adapted/adt/adapt_adt.hpp b/boost/fusion/adapted/adt/adapt_adt.hpp index 454ac922e5..3be25b1efc 100644 --- a/boost/fusion/adapted/adt/adapt_adt.hpp +++ b/boost/fusion/adapted/adt/adapt_adt.hpp @@ -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> diff --git a/boost/fusion/adapted/adt/adapt_adt_named.hpp b/boost/fusion/adapted/adt/adapt_adt_named.hpp index c2ace0130c..617e2f184a 100644 --- a/boost/fusion/adapted/adt/adapt_adt_named.hpp +++ b/boost/fusion/adapted/adt/adapt_adt_named.hpp @@ -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> diff --git a/boost/fusion/adapted/adt/adapt_assoc_adt.hpp b/boost/fusion/adapted/adt/adapt_assoc_adt.hpp index cce1dfb081..12bf6aa24f 100644 --- a/boost/fusion/adapted/adt/adapt_assoc_adt.hpp +++ b/boost/fusion/adapted/adt/adapt_assoc_adt.hpp @@ -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> diff --git a/boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp b/boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp index b875982533..a420e5d3cb 100644 --- a/boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp +++ b/boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp @@ -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> diff --git a/boost/fusion/adapted/adt/detail/adapt_base.hpp b/boost/fusion/adapted/adt/detail/adapt_base.hpp index bddc79de7e..3de396dd6b 100644 --- a/boost/fusion/adapted/adt/detail/adapt_base.hpp +++ b/boost/fusion/adapted/adt/detail/adapt_base.hpp @@ -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) \ { \ diff --git a/boost/fusion/adapted/adt/detail/extension.hpp b/boost/fusion/adapted/adt/detail/extension.hpp index 2f4db4dd09..6349118053 100644 --- a/boost/fusion/adapted/adt/detail/extension.hpp +++ b/boost/fusion/adapted/adt/detail/extension.hpp @@ -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> @@ -19,16 +20,17 @@ namespace boost { namespace fusion { namespace detail { - template <typename T, typename Dummy> - struct get_identity - : remove_const<typename remove_reference<T>::type> - {}; + template <typename T, typename Dummy> + struct get_identity + : remove_const<typename remove_reference<T>::type> + {}; } namespace extension { // 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(); |