comparison DEPENDENCIES/generic/include/boost/fusion/iterator/deref.hpp @ 101:c530137014c0

Update Boost headers (1.58.0)
author Chris Cannam
date Mon, 07 Sep 2015 11:12:49 +0100
parents 2665513ce2d3
children
comparison
equal deleted inserted replaced
100:793467b5e61c 101:c530137014c0
5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 ==============================================================================*/ 6 ==============================================================================*/
7 #if !defined(FUSION_DEREF_05042005_1019) 7 #if !defined(FUSION_DEREF_05042005_1019)
8 #define FUSION_DEREF_05042005_1019 8 #define FUSION_DEREF_05042005_1019
9 9
10 #include <boost/fusion/support/config.hpp>
10 #include <boost/fusion/support/iterator_base.hpp> 11 #include <boost/fusion/support/iterator_base.hpp>
11 #include <boost/fusion/support/tag_of.hpp> 12 #include <boost/fusion/support/tag_of.hpp>
12 13
13 namespace boost { namespace fusion 14 namespace boost { namespace fusion
14 { 15 {
52 template apply<Iterator> 53 template apply<Iterator>
53 {}; 54 {};
54 } 55 }
55 56
56 template <typename Iterator> 57 template <typename Iterator>
57 typename result_of::deref<Iterator>::type 58 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
59 inline typename result_of::deref<Iterator>::type
58 deref(Iterator const& i) 60 deref(Iterator const& i)
59 { 61 {
60 typedef result_of::deref<Iterator> deref_meta; 62 typedef result_of::deref<Iterator> deref_meta;
61 return deref_meta::call(i); 63 return deref_meta::call(i);
62 } 64 }
63 65
64 template <typename Iterator> 66 template <typename Iterator>
65 typename result_of::deref<Iterator>::type 67 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
68 inline typename result_of::deref<Iterator>::type
66 operator*(iterator_base<Iterator> const& i) 69 operator*(iterator_base<Iterator> const& i)
67 { 70 {
68 return fusion::deref(i.cast()); 71 return fusion::deref(i.cast());
69 } 72 }
70 }} 73 }}