mirror of
https://github.com/boostorg/iterator.git
synced 2025-07-20 08:02:10 +02:00
put indirect_iterator_pair_generator back in
[SVN r9027]
This commit is contained in:
@ -13,8 +13,7 @@
|
||||
// Revision History:
|
||||
|
||||
// 07 Feb 2001 Jeremy Siek
|
||||
// Removed all pair generator's except for projection and
|
||||
// some const adaptor generators.
|
||||
// Removed some const iterator adaptor generators.
|
||||
//
|
||||
// Added make_xxx_iterator() helper functions for remaining
|
||||
// iterator adaptors.
|
||||
@ -648,6 +647,20 @@ public:
|
||||
typedef iterator_adaptor<OuterIterator, indirect_iterator_policies, indirect_traits> type;
|
||||
};
|
||||
|
||||
template <class OuterIterator, // Mutable or Immutable, does not matter
|
||||
class ConstInnerIterator, // Immutable
|
||||
class ConstInnerTraits = boost::detail::iterator_traits<ConstInnerIterator>,
|
||||
class InnerIterator = typename boost::detail::iterator_traits<OuterIterator>::value_type,
|
||||
class InnerTraits = boost::detail::iterator_traits<InnerIterator>
|
||||
>
|
||||
struct indirect_iterator_pair_generator
|
||||
{
|
||||
typedef typename indirect_iterator_generator<OuterIterator,
|
||||
InnerIterator, InnerTraits>::type iterator;
|
||||
typedef typename indirect_iterator_generator<OuterIterator,
|
||||
ConstInnerIterator, ConstInnerTraits>::type const_iterator;
|
||||
};
|
||||
|
||||
template <class OuterIterator, class InnerIterator, class InnerTraits>
|
||||
inline typename indirect_iterator_generator<OuterIterator, InnerIterator, InnerTraits>::type
|
||||
make_indirect_iterator(OuterIterator outer, InnerIterator, InnerTraits)
|
||||
|
Reference in New Issue
Block a user