replaced DEDUCED_TYPENAME with typename

[SVN r28875]
This commit is contained in:
Jonathan Turkanis
2005-05-13 15:42:53 +00:00
parent 9b1cdde025
commit c5d1b4a62a

View File

@ -12,7 +12,9 @@
#define BOOST_RANGE_DETAIL_ITERATOR_HPP
#include <boost/range/detail/common.hpp>
#include <boost/type_traits/remove_bounds.hpp>
#include <boost/range/detail/remove_extent.hpp>
#include <boost/static_assert.hpp>
//////////////////////////////////////////////////////////////////////////////
// missing partial specialization workaround.
@ -23,7 +25,13 @@ namespace boost
namespace range_detail
{
template< typename T >
struct range_iterator_;
struct range_iterator_ {
template< typename C >
struct pts
{
typedef int type;
};
};
template<>
struct range_iterator_<std_container_>
@ -31,7 +39,7 @@ namespace boost
template< typename C >
struct pts
{
typedef BOOST_DEDUCED_TYPENAME C::iterator type;
typedef BOOST_RANGE_DEDUCED_TYPENAME C::iterator type;
};
};
@ -41,7 +49,7 @@ namespace boost
template< typename P >
struct pts
{
typedef BOOST_DEDUCED_TYPENAME P::first_type type;
typedef BOOST_RANGE_DEDUCED_TYPENAME P::first_type type;
};
};
@ -52,7 +60,7 @@ namespace boost
struct pts
{
typedef BOOST_RANGE_DEDUCED_TYPENAME
remove_bounds<T>::type* type;
remove_extent<T>::type* type;
};
};
@ -63,7 +71,7 @@ namespace boost
struct pts
{
typedef BOOST_RANGE_DEDUCED_TYPENAME
remove_bounds<T>::type* type;
remove_extent<T>::type* type;
};
};
@ -106,15 +114,14 @@ namespace boost
typedef const wchar_t* type;
};
};
}
template< typename C >
class range_iterator
{
typedef BOOST_DEDUCED_TYPENAME range_detail::range<C>::type c_type;
typedef BOOST_RANGE_DEDUCED_TYPENAME range_detail::range<C>::type c_type;
public:
typedef BOOST_DEDUCED_TYPENAME range_detail::range_iterator_<c_type>::BOOST_NESTED_TEMPLATE pts<C>::type type;
typedef typename range_detail::range_iterator_<c_type>::BOOST_NESTED_TEMPLATE pts<C>::type type;
};
}