Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/range/detail/end.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 |
---|---|
12 #define BOOST_RANGE_DETAIL_END_HPP | 12 #define BOOST_RANGE_DETAIL_END_HPP |
13 | 13 |
14 #include <boost/config.hpp> // BOOST_MSVC | 14 #include <boost/config.hpp> // BOOST_MSVC |
15 #include <boost/detail/workaround.hpp> | 15 #include <boost/detail/workaround.hpp> |
16 | 16 |
17 #if BOOST_WORKAROUND(BOOST_MSVC, < 1300) | 17 #include <boost/range/detail/implementation_help.hpp> |
18 # include <boost/range/detail/vc6/end.hpp> | 18 #include <boost/range/iterator.hpp> |
19 #else | 19 #include <boost/range/detail/common.hpp> |
20 # include <boost/range/detail/implementation_help.hpp> | |
21 # include <boost/range/iterator.hpp> | |
22 # include <boost/range/detail/common.hpp> | |
23 # if BOOST_WORKAROUND(BOOST_MSVC, < 1310) | |
24 # include <boost/range/detail/remove_extent.hpp> | |
25 # endif | |
26 | 20 |
27 namespace boost | 21 namespace boost |
28 { | 22 { |
29 namespace range_detail | 23 namespace range_detail |
30 { | 24 { |
66 ////////////////////////////////////////////////////////////////////// | 60 ////////////////////////////////////////////////////////////////////// |
67 | 61 |
68 template<> | 62 template<> |
69 struct range_end<array_> | 63 struct range_end<array_> |
70 { | 64 { |
71 #if !BOOST_WORKAROUND(BOOST_MSVC, < 1310) | |
72 template< typename T, std::size_t sz > | |
73 static T* fun( T BOOST_RANGE_ARRAY_REF()[sz] ) | |
74 { | |
75 return boost::range_detail::array_end( boost_range_array ); | |
76 } | |
77 #else | |
78 template<typename T> | 65 template<typename T> |
79 static BOOST_RANGE_DEDUCED_TYPENAME remove_extent<T>::type* fun(T& t) | 66 static BOOST_RANGE_DEDUCED_TYPENAME remove_extent<T>::type* fun(T& t) |
80 { | 67 { |
81 return t + remove_extent<T>::size; | 68 return t + remove_extent<T>::size; |
82 } | 69 } |
83 #endif | |
84 }; | 70 }; |
85 | 71 |
86 } // namespace 'range_detail' | 72 } // namespace 'range_detail' |
87 | 73 |
88 namespace range_adl_barrier | 74 namespace range_adl_barrier |
95 } | 81 } |
96 } // namespace range_adl_barrier | 82 } // namespace range_adl_barrier |
97 | 83 |
98 } // namespace 'boost' | 84 } // namespace 'boost' |
99 | 85 |
100 # endif // VC6 | |
101 #endif | 86 #endif |