mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory > Class Template Reference

#include <mn_iterator_pair.hpp>

+ Inheritance diagram for mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >:
+ Collaboration diagram for mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >:

Public Types

using iterator_category = TCategory
 
using value_type = void
 
using traits_type = mn::iterator_traits< TIterator >
 
using difference_type = typename traits_type::difference_type
 
using self_type = basic_iterator_pair< TIterator, UIterator, TCategory, VIterator >
 
using pointer = self_type *
 
using reference = self_type &
 
- Public Types inherited from mn::container::basic_triple< TFIRST, TSECOND, TTHIRD >
using first_type = TFIRST
 
using pointer_first = TFIRST *
 
using reference_first = TFIRST &
 
using second_type = TSECOND
 
using pointer_second = TSECOND *
 
using reference_second = TSECOND &
 
using third_type = TTHIRD
 
using pointer_third = TTHIRD *
 
using reference_third = TTHIRD &
 
using self_type = basic_triple< TFIRST, TSECOND, TTHIRD >
 

Public Member Functions

 basic_iterator_pair ()
 
 basic_iterator_pair (const TIterator &_itFirst, const UIterator &_itSecond, const VIterator &_itThird)
 
 basic_iterator_pair (const self_type &other)
 
 operator UIterator () const
 
 operator TIterator () const
 
 operator VIterator () const
 
referenceoperator++ ()
 
referenceoperator++ ()
 
self_type operator++ (int)
 
self_type operator-- (int)
 
difference_type operator- (const self_type &other) const
 
self_type operator+ (difference_type delta) const
 
self_type operator- (difference_type delta) const
 
- Public Member Functions inherited from mn::container::basic_triple< TFIRST, TSECOND, TTHIRD >
 basic_triple ()
 
 basic_triple (const reference_first a)
 
 basic_triple (const reference_first a, reference_second b, reference_third c)
 
 basic_triple (const self_type &other)
 
void swap (const self_type &other)
 
self_typeoperator= (const self_type &rhs)
 
bool operator== (const self_type &rhs)
 
bool operator!= (const self_type &rhs)
 

Private Types

using base_type = mn::container::triple< TIterator, UIterator, VIterator >
 

Additional Inherited Members

- Public Attributes inherited from mn::container::basic_triple< TFIRST, TSECOND, TTHIRD >
first_type first
 
second_type second
 
third_type third
 

Member Typedef Documentation

◆ base_type

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::base_type = mn::container::triple<TIterator, UIterator, VIterator>
private

◆ difference_type

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::difference_type = typename traits_type::difference_type

◆ iterator_category

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::iterator_category = TCategory

◆ pointer

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::pointer = self_type*

◆ reference

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::reference = self_type&

◆ self_type

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::self_type = basic_iterator_pair<TIterator, UIterator, TCategory, VIterator>

◆ traits_type

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::traits_type = mn::iterator_traits<TIterator>

◆ value_type

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
using mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::value_type = void

Member Function Documentation

◆ basic_iterator_pair() [1/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::basic_iterator_pair ( )
inline

◆ basic_iterator_pair() [2/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::basic_iterator_pair ( const self_type other)
inline

◆ basic_iterator_pair() [3/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::basic_iterator_pair ( const TIterator &  _itFirst,
const UIterator &  _itSecond,
const VIterator &  _itThird 
)
inline

◆ operator TIterator()

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator TIterator ( ) const
inline

◆ operator UIterator()

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator UIterator ( ) const
inline

◆ operator VIterator()

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator VIterator ( ) const
inline

◆ operator+()

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
self_type mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator+ ( difference_type  delta) const
inline

◆ operator++() [1/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
reference& mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator++ ( void  )
inline

◆ operator++() [2/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
reference& mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator++ ( void  )
inline

◆ operator++() [3/3]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
self_type mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator++ ( int  )
inline

◆ operator-() [1/2]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
difference_type mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator- ( const self_type other) const
inline

◆ operator-() [2/2]

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
self_type mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator- ( difference_type  delta) const
inline

◆ operator--()

template<typename TIterator , typename UIterator , typename VIterator , typename TCategory >
self_type mn::basic_iterator_triple< TIterator, UIterator, VIterator, TCategory >::operator-- ( int  )
inline

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