mn::basic_iterator_pair< TIterator, UIterator, TCategory > Class Template Reference

#include <mn_iterator_pair.hpp>

+ Inheritance diagram for mn::basic_iterator_pair< TIterator, UIterator, TCategory >:
+ Collaboration diagram for mn::basic_iterator_pair< TIterator, UIterator, 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 >
 
using pointer = self_type *
 
using reference = self_type &
 
- Public Types inherited from mn::container::basic_pair< TFIRST, TSECOND >
using first_type = TFIRST
 
using pointer_first = TFIRST *
 
using reference_first = TFIRST &
 
using const_reference_first = const TFIRST &
 
using second_type = TSECOND
 
using pointer_second = TSECOND *
 
using reference_second = TSECOND &
 
using const_reference_second = const TSECOND &
 
using self_type = basic_pair< TFIRST, TSECOND >
 

Public Member Functions

 basic_iterator_pair ()
 
 basic_iterator_pair (const TIterator &_itFirst, const UIterator &_itSecond)
 
 basic_iterator_pair (const self_type &other)
 
 operator UIterator () const
 
 operator TIterator () 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_pair< TFIRST, TSECOND >
 basic_pair ()
 
 basic_pair (const reference_first a) noexcept
 
 basic_pair (const reference_first a, reference_second b)
 
 basic_pair (const self_type &other) noexcept
 
void swap (const self_type &other) noexcept
 
self_typeoperator= (const self_type &rhs) noexcept
 
bool operator== (const self_type &rhs) noexcept
 
bool operator!= (const self_type &rhs) noexcept
 

Private Types

using base_type = mn::container::pair< TIterator, UIterator >
 

Additional Inherited Members

- Public Attributes inherited from mn::container::basic_pair< TFIRST, TSECOND >
first_type first
 
second_type second
 

Member Typedef Documentation

◆ base_type

template<typename TIterator , typename UIterator , typename TCategory >
using mn::basic_iterator_pair< TIterator, UIterator, TCategory >::base_type = mn::container::pair<TIterator, UIterator>
private

◆ difference_type

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

◆ iterator_category

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

◆ pointer

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

◆ reference

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

◆ self_type

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

◆ traits_type

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

◆ value_type

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

Constructor & Destructor Documentation

◆ basic_iterator_pair() [1/3]

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

◆ basic_iterator_pair() [2/3]

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

◆ basic_iterator_pair() [3/3]

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

Member Function Documentation

◆ operator TIterator()

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

◆ operator UIterator()

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

◆ operator+()

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

◆ operator++() [1/3]

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

◆ operator++() [2/3]

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

◆ operator++() [3/3]

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

◆ operator-() [1/2]

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

◆ operator-() [2/2]

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

◆ operator--()

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

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