summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/range/detail')
-rw-r--r--3rdParty/Boost/src/boost/range/detail/detail_str.hpp4
-rw-r--r--[-rwxr-xr-x]3rdParty/Boost/src/boost/range/detail/extract_optional_type.hpp0
-rw-r--r--[-rwxr-xr-x]3rdParty/Boost/src/boost/range/detail/misc_concept.hpp0
-rw-r--r--3rdParty/Boost/src/boost/range/detail/size_type.hpp33
-rw-r--r--3rdParty/Boost/src/boost/range/detail/value_type.hpp72
5 files changed, 83 insertions, 26 deletions
diff --git a/3rdParty/Boost/src/boost/range/detail/detail_str.hpp b/3rdParty/Boost/src/boost/range/detail/detail_str.hpp
index d5ad5b3..5ef7a34 100644
--- a/3rdParty/Boost/src/boost/range/detail/detail_str.hpp
+++ b/3rdParty/Boost/src/boost/range/detail/detail_str.hpp
@@ -134,8 +134,8 @@ namespace boost
#include <boost/range/detail/begin.hpp>
#include <boost/range/detail/end.hpp>
-#include <boost/range/detail/size_type>
-#include <boost/range/detail/value_type>
+#include <boost/range/detail/size_type.hpp>
+#include <boost/range/detail/value_type.hpp>
#include <boost/range/detail/common.hpp>
namespace boost
diff --git a/3rdParty/Boost/src/boost/range/detail/extract_optional_type.hpp b/3rdParty/Boost/src/boost/range/detail/extract_optional_type.hpp
index 8292e34..8292e34 100755..100644
--- a/3rdParty/Boost/src/boost/range/detail/extract_optional_type.hpp
+++ b/3rdParty/Boost/src/boost/range/detail/extract_optional_type.hpp
diff --git a/3rdParty/Boost/src/boost/range/detail/misc_concept.hpp b/3rdParty/Boost/src/boost/range/detail/misc_concept.hpp
index 74cb919..74cb919 100755..100644
--- a/3rdParty/Boost/src/boost/range/detail/misc_concept.hpp
+++ b/3rdParty/Boost/src/boost/range/detail/misc_concept.hpp
diff --git a/3rdParty/Boost/src/boost/range/detail/size_type.hpp b/3rdParty/Boost/src/boost/range/detail/size_type.hpp
index ec49f4d..78a60a4 100644
--- a/3rdParty/Boost/src/boost/range/detail/size_type.hpp
+++ b/3rdParty/Boost/src/boost/range/detail/size_type.hpp
@@ -17,52 +17,37 @@
// missing partial specialization workaround.
//////////////////////////////////////////////////////////////////////////////
-namespace boost
+namespace boost
{
- namespace range_detail
- {
+ namespace range_detail
+ {
template< typename T >
- struct range_size_type_;
-
- template<>
- struct range_size_type_<std_container_>
+ struct range_size_type_
{
template< typename C >
struct pts
{
- typedef BOOST_RANGE_DEDUCED_TYPENAME C::size_type type;
- };
- };
-
- template<>
- struct range_size_type_<std_pair_>
- {
- template< typename P >
- struct pts
- {
typedef std::size_t type;
};
};
template<>
- struct range_size_type_<array_>
+ struct range_size_type_<std_container_>
{
- template< typename A >
+ template< typename C >
struct pts
{
- typedef std::size_t type;
+ typedef BOOST_RANGE_DEDUCED_TYPENAME C::size_type type;
};
};
+ }
-
- }
-
template< typename C >
class range_size
{
typedef typename range_detail::range<C>::type c_type;
public:
- typedef typename range_detail::range_size_type_<c_type>::BOOST_NESTED_TEMPLATE pts<C>::type type;
+ typedef typename range_detail::range_size_type_<c_type>::BOOST_NESTED_TEMPLATE pts<C>::type type;
};
}
diff --git a/3rdParty/Boost/src/boost/range/detail/value_type.hpp b/3rdParty/Boost/src/boost/range/detail/value_type.hpp
new file mode 100644
index 0000000..2784514
--- /dev/null
+++ b/3rdParty/Boost/src/boost/range/detail/value_type.hpp
@@ -0,0 +1,72 @@
+// Boost.Range library
+//
+// Copyright Thorsten Ottosen 2003-2004. Use, modification and
+// distribution is subject to the Boost Software License, Version
+// 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+//
+// For more information, see http://www.boost.org/libs/range/
+//
+
+#ifndef BOOST_RANGE_DETAIL_VALUE_TYPE_HPP
+#define BOOST_RANGE_DETAIL_VALUE_TYPE_HPP
+
+#include <boost/range/detail/common.hpp>
+#include <boost/range/detail/remove_extent.hpp>
+#include <boost/iterator/iterator_traits.hpp>
+
+//////////////////////////////////////////////////////////////////////////////
+// missing partial specialization workaround.
+//////////////////////////////////////////////////////////////////////////////
+
+namespace boost
+{
+ namespace range_detail
+ {
+ template< typename T >
+ struct range_value_type_;
+
+ template<>
+ struct range_value_type_<std_container_>
+ {
+ template< typename C >
+ struct pts
+ {
+ typedef BOOST_RANGE_DEDUCED_TYPENAME C::value_type type;
+ };
+ };
+
+ template<>
+ struct range_value_type_<std_pair_>
+ {
+ template< typename P >
+ struct pts
+ {
+ typedef BOOST_RANGE_DEDUCED_TYPENAME boost::iterator_value< BOOST_RANGE_DEDUCED_TYPENAME P::first_type >::type type;
+ };
+ };
+
+ template<>
+ struct range_value_type_<array_>
+ {
+ template< typename T >
+ struct pts
+ {
+ typedef BOOST_DEDUCED_TYPENAME remove_extent<T>::type type;
+ };
+ };
+
+ }
+
+ template< typename C >
+ class range_value
+ {
+ typedef BOOST_DEDUCED_TYPENAME range_detail::range<C>::type c_type;
+ public:
+ typedef BOOST_DEDUCED_TYPENAME range_detail::range_value_type_<c_type>::BOOST_NESTED_TEMPLATE pts<C>::type type;
+ };
+
+}
+
+#endif
+