# __gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator > Class Template Reference

List of all members.

## Detailed Description

### template<typename RandomAccessIterator, typename Comparator>
class __gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator >

Iterator wrapper supporting an implicit supremum at the end of the sequence, dominating all comparisons. Deriving from RandomAccessIterator is not possible since RandomAccessIterator need not be a class.

Definition at line 84 of file multiway_merge.h.

## Public Member Functions

- guarded_iterator (RandomAccessIterator begin, RandomAccessIterator end, Comparator &comp)
- std::iterator_traits< RandomAccessIterator
  >::value_type operator * ()
- operator RandomAccessIterator ()
- guarded_iterator< RandomAccessIterator,
  Comparator > & operator++ ()

## Friends

- bool operator (guarded_iterator< RandomAccessIterator, Comparator > &bi1, guarded_iterator< RandomAccessIterator, Comparator > &bi2)
- bool operator (guarded_iterator< RandomAccessIterator, Comparator > &bi1, guarded_iterator< RandomAccessIterator, Comparator > &bi2)

## Constructor & Destructor Documentation

template<typename RandomAccessIterator, typename Comparator>

__gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator >::guarded_iterator | ( | RandomAccessIterator | begin,
|  | RandomAccessIterator | end,
|  | Comparator & | comp |
| ) |  |  | `[inline]`

Constructor. Sets iterator to beginning of sequence.

Parameters:

  | begin | Begin iterator of sequence.
  | end | End iterator of sequence.
  | comp | Comparator provided for associated overloaded compare operators.

Definition at line 102 of file multiway_merge.h.

## Member Function Documentation

template<typename RandomAccessIterator, typename Comparator>

std::iterator_traits<RandomAccessIterator>::value_type __gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator >::operator * | ( |  | ) | `[inline]`

Dereference operator.

Returns:
  Referenced element.

Definition at line 119 of file multiway_merge.h.

template<typename RandomAccessIterator, typename Comparator>

__gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator >::operator RandomAccessIterator | ( |  | ) | `[inline]`

Convert to wrapped iterator.

Returns:
  Wrapped iterator.

Definition at line 124 of file multiway_merge.h.

template<typename RandomAccessIterator, typename Comparator>

guarded_iterator<RandomAccessIterator, Comparator>& __gnu_parallel::guarded_iterator< RandomAccessIterator, Comparator >::operator++ | ( |  | ) | `[inline]`

Pre-increment operator.

Returns:
  This.

Definition at line 110 of file multiway_merge.h.

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

- multiway_merge.h