1 | // Boost.Geometry Index |
2 | // |
3 | // Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland. |
4 | // |
5 | // Use, modification and distribution is subject to the Boost Software License, |
6 | // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at |
7 | // http://www.boost.org/LICENSE_1_0.txt) |
8 | |
9 | #include <boost/range.hpp> |
10 | #include <boost/mpl/aux_/has_type.hpp> |
11 | #include <boost/mpl/if.hpp> |
12 | #include <boost/mpl/and.hpp> |
13 | //#include <boost/type_traits/is_convertible.hpp> |
14 | |
15 | #ifndef BOOST_GEOMETRY_INDEX_DETAIL_META_HPP |
16 | #define BOOST_GEOMETRY_INDEX_DETAIL_META_HPP |
17 | |
18 | namespace boost { namespace geometry { namespace index { namespace detail { |
19 | |
20 | template <typename T> |
21 | struct is_range |
22 | : ::boost::mpl::aux::has_type< ::boost::range_iterator<T> > |
23 | {}; |
24 | |
25 | //template <typename T, typename V, bool IsRange> |
26 | //struct is_range_of_convertible_values_impl |
27 | // : ::boost::is_convertible<typename ::boost::range_value<T>::type, V> |
28 | //{}; |
29 | // |
30 | //template <typename T, typename V> |
31 | //struct is_range_of_convertible_values_impl<T, V, false> |
32 | // : ::boost::mpl::bool_<false> |
33 | //{}; |
34 | // |
35 | //template <typename T, typename V> |
36 | //struct is_range_of_convertible_values |
37 | // : is_range_of_convertible_values_impl<T, V, is_range<T>::value> |
38 | //{}; |
39 | |
40 | }}}} // namespace boost::geometry::index::detail |
41 | |
42 | #endif // BOOST_GEOMETRY_INDEX_DETAIL_META_HPP |
43 | |