mirror of
https://github.com/boostorg/iterator.git
synced 2025-05-12 14:01:37 +00:00
parent
0237e49a17
commit
bca372da18
@ -50,6 +50,11 @@ private:
|
|||||||
typename super_t::reference dereference() const
|
typename super_t::reference dereference() const
|
||||||
{ return *(m_elt_iter + *this->base()); }
|
{ return *(m_elt_iter + *this->base()); }
|
||||||
|
|
||||||
|
#ifndef BOOST_NO_MEMBER_TEMPLATE_FRIENDS
|
||||||
|
template <class,class> friend class permutation_iterator;
|
||||||
|
#else
|
||||||
|
public:
|
||||||
|
#endif
|
||||||
ElementIterator m_elt_iter;
|
ElementIterator m_elt_iter;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -9,6 +9,8 @@
|
|||||||
|
|
||||||
#include <boost/iterator/permutation_iterator.hpp>
|
#include <boost/iterator/permutation_iterator.hpp>
|
||||||
#include <boost/static_assert.hpp>
|
#include <boost/static_assert.hpp>
|
||||||
|
#include <boost/iterator/iterator_concepts.hpp>
|
||||||
|
#include <boost/concept/assert.hpp>
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <list>
|
#include <list>
|
||||||
@ -40,6 +42,14 @@ void permutation_test()
|
|||||||
permutation_type it = begin;
|
permutation_type it = begin;
|
||||||
permutation_type end = boost::make_permutation_iterator( elements.begin(), indices.end() );
|
permutation_type end = boost::make_permutation_iterator( elements.begin(), indices.end() );
|
||||||
|
|
||||||
|
typedef boost::permutation_iterator< element_range_type::const_iterator, index_type::iterator > permutation_const_type;
|
||||||
|
|
||||||
|
BOOST_CONCEPT_ASSERT((
|
||||||
|
boost_concepts::InteroperableIteratorConcept<
|
||||||
|
permutation_type
|
||||||
|
, permutation_const_type
|
||||||
|
>));
|
||||||
|
|
||||||
BOOST_CHECK( it == begin );
|
BOOST_CHECK( it == begin );
|
||||||
BOOST_CHECK( it != end );
|
BOOST_CHECK( it != end );
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user