1 // Copyright Neil Groves 2010. Use, modification and
2 // distribution is subject to the Boost Software License, Version
3 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
4 // http://www.boost.org/LICENSE_1_0.txt)
7 // For more information, see http://www.boost.org/libs/range/
9 #ifndef BOOST_RANGE_COMBINE_HPP
10 #define BOOST_RANGE_COMBINE_HPP
12 #include <boost/config.hpp>
13 #include <boost/range/iterator_range_core.hpp>
14 #include <boost/iterator/zip_iterator.hpp>
21 template<typename IterTuple>
23 : public iterator_range<zip_iterator<IterTuple> >
25 typedef iterator_range<zip_iterator<IterTuple> > base;
27 combined_range(IterTuple first, IterTuple last)
36 #if defined(BOOST_NO_CXX11_AUTO_DECLARATIONS) || \
37 defined(BOOST_NO_CXX11_DECLTYPE) || \
38 defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) || \
39 defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
40 # include <boost/range/detail/combine_cxx03.hpp>
42 # include <boost/range/detail/combine_cxx11.hpp>