17 #ifndef HH_SENF_Utils_Range_ 18 #define HH_SENF_Utils_Range_ 1 21 #include <boost/range/iterator_range.hpp> 22 #include <boost/iterator/transform_iterator.hpp> 34 template <
class Range,
class Fn>
35 boost::iterator_range<
36 boost::transform_iterator< Fn,
37 typename boost::range_const_iterator<Range>::type > >
40 template <
class Range,
class Fn>
41 boost::iterator_range<
42 boost::transform_iterator< Fn,
43 typename boost::range_iterator<Range>::type > >
46 template <
class Range,
class Iterator>
47 void copy_range(Range
const & range, Iterator
const & i);
49 template <
class Range,
class Iterator>
50 void copy_range(Range & range, Iterator
const & i);
52 template <
class Range>
boost::iterator_range< boost::transform_iterator< Fn, typename boost::range_const_iterator< Range >::type > > make_transform_range(Range const &range, Fn const &fn)
Make a boost::iterator_range from boost::trasform_iterator.
void copy_range(Range const &range, Iterator const &i)
bool has_one_elt(Range r)