Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::iterators::permutation_iterator< ElementIterator, IndexIterator > Class Template Reference

#include <permutation_iterator.hpp>

Inheritance diagram for boost::iterators::permutation_iterator< ElementIterator, IndexIterator >:
Collaboration diagram for boost::iterators::permutation_iterator< ElementIterator, IndexIterator >:

Public Types

typedef IndexIterator base_type
 

Public Member Functions

 permutation_iterator ()
 
 permutation_iterator (ElementIterator x, IndexIterator y)
 
template<class OtherElementIterator , class OtherIndexIterator >
 permutation_iterator (permutation_iterator< OtherElementIterator, OtherIndexIterator > const &r, typename enable_if_convertible< OtherElementIterator, ElementIterator >::type *=0, typename enable_if_convertible< OtherIndexIterator, IndexIterator >::type *=0)
 
IndexIteratorconst & base () const
 

Protected Types

typedef iterator_adaptor
< permutation_iterator
< ElementIterator,
IndexIterator >, IndexIterator,
boost::detail::iterator_traits
< ElementIterator >
::value_type, use_default,
boost::detail::iterator_traits
< ElementIterator >::reference,
Difference > 
iterator_adaptor_
 
typedef iterator_facade
< Derived, Value,
CategoryOrTraversal, Reference,
Difference > 
iterator_facade_
 

Protected Member Functions

IndexIteratorconst & base_reference () const
 
IndexIterator & base_reference ()
 

Friends

class iterator_core_access
 
template<class , class >
class permutation_iterator
 

Member Typedef Documentation

typedef IndexIterator boost::iterators::iterator_adaptor< permutation_iterator< ElementIterator, IndexIterator > , IndexIterator , boost::detail::iterator_traits< ElementIterator >::value_type , use_default , boost::detail::iterator_traits< ElementIterator >::reference , Difference >::base_type
inherited
typedef iterator_adaptor<permutation_iterator< ElementIterator, IndexIterator > ,IndexIterator ,boost::detail::iterator_traits< ElementIterator >::value_type ,use_default ,boost::detail::iterator_traits< ElementIterator >::reference ,Difference> boost::iterators::iterator_adaptor< permutation_iterator< ElementIterator, IndexIterator > , IndexIterator , boost::detail::iterator_traits< ElementIterator >::value_type , use_default , boost::detail::iterator_traits< ElementIterator >::reference , Difference >::iterator_adaptor_
protectedinherited
template<class Derived, class Value, class CategoryOrTraversal, class Reference = Value&, class Difference = std::ptrdiff_t>
typedef iterator_facade<Derived,Value,CategoryOrTraversal,Reference,Difference> boost::iterators::iterator_facade< Derived, Value, CategoryOrTraversal, Reference, Difference >::iterator_facade_
protectedinherited

Constructor & Destructor Documentation

template<class ElementIterator, class IndexIterator>
boost::iterators::permutation_iterator< ElementIterator, IndexIterator >::permutation_iterator ( )
inline
template<class ElementIterator, class IndexIterator>
boost::iterators::permutation_iterator< ElementIterator, IndexIterator >::permutation_iterator ( ElementIterator  x,
IndexIterator  y 
)
inlineexplicit
template<class ElementIterator, class IndexIterator>
template<class OtherElementIterator , class OtherIndexIterator >
boost::iterators::permutation_iterator< ElementIterator, IndexIterator >::permutation_iterator ( permutation_iterator< OtherElementIterator, OtherIndexIterator > const &  r,
typename enable_if_convertible< OtherElementIterator, ElementIterator >::type = 0,
typename enable_if_convertible< OtherIndexIterator, IndexIterator >::type = 0 
)
inline

Member Function Documentation

IndexIterator const& boost::iterators::iterator_adaptor< permutation_iterator< ElementIterator, IndexIterator > , IndexIterator , boost::detail::iterator_traits< ElementIterator >::value_type , use_default , boost::detail::iterator_traits< ElementIterator >::reference , Difference >::base ( ) const
inlineinherited
IndexIterator const& boost::iterators::iterator_adaptor< permutation_iterator< ElementIterator, IndexIterator > , IndexIterator , boost::detail::iterator_traits< ElementIterator >::value_type , use_default , boost::detail::iterator_traits< ElementIterator >::reference , Difference >::base_reference ( ) const
inlineprotectedinherited
IndexIterator & boost::iterators::iterator_adaptor< permutation_iterator< ElementIterator, IndexIterator > , IndexIterator , boost::detail::iterator_traits< ElementIterator >::value_type , use_default , boost::detail::iterator_traits< ElementIterator >::reference , Difference >::base_reference ( )
inlineprotectedinherited

Friends And Related Function Documentation

template<class ElementIterator, class IndexIterator>
template<class , class >
friend class permutation_iterator
friend
template<class ElementIterator, class IndexIterator>
friend class iterator_core_access
friend

The documentation for this class was generated from the following file: