3 // Copyright Thorsten Ottosen 2006. Use, modification and
4 // distribution is subject to the Boost Software License, Version
5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
8 // For more information, see http://www.boost.org/libs/range/
11 #ifndef BOOST_RANGE_AS_ARRAY_HPP
12 #define BOOST_RANGE_AS_ARRAY_HPP
14 #if defined(_MSC_VER) && (_MSC_VER >= 1200)
18 #include <boost/range/iterator_range.hpp>
19 #include <boost/range/detail/str_types.hpp>
25 inline iterator_range
< BOOST_DEDUCED_TYPENAME range_iterator
<R
>::type
>
28 return boost::make_iterator_range( r
);
31 #ifndef BOOST_NO_FUNCTION_TEMPLATE_ORDERING
33 template< class Range
>
34 inline boost::iterator_range
< BOOST_DEDUCED_TYPENAME range_iterator
<const Range
>::type
>
35 as_array( const Range
& r
)
37 return boost::make_iterator_range( r
);