halcheck 1.0
Loading...
Searching...
No Matches
halcheck::lib::iota_iterator< T > Class Template Reference

An iterator pointing to an integral value. More...

#include <iota.hpp>

Inheritance diagram for halcheck::lib::iota_iterator< T >:
halcheck::lib::iterator_interface< iota_iterator< T > >

Public Types

using value_type = T
 The type of value pointed to by this iterator.
 
using reference = T
 The return type of operator*.
 
using pointer = void
 This type does not support operator->.
 
using difference_type = lib::iota_diff_t<T>
 The return type of operator-.
 
using iterator_category = std::input_iterator_tag
 This iterator is an input iterator.
 

Public Member Functions

constexpr iota_iterator ()=default
 Constructs a default iota_iterator.
 
constexpr iota_iterator (T value)
 Constructs an iota_iterator pointing to the specified value.
 
constexpr value_type operator* () const noexcept
 Obtains the value pointed to by this iterator.
 
iota_iteratoroperator++ ()
 Advances this iterator.
 
iota_iteratoroperator-- ()
 Advances this iterator backwards.
 
template<typename U = T>
iota_iteratoroperator+= (difference_type n)
 Advances this iterator by the specified amount.
 
template<typename U = T>
iota_iteratoroperator+= (difference_type n)
 Advances this iterator by the specified amount.
 

Private Member Functions

operator++ (int)
 Advances this iterator.
 
operator-- (int)
 Advances this iterator a step backwards.
 

Friends

class lib::iterator_interface< iota_iterator >
 
bool operator== (const iota_iterator &lhs, const iota_iterator &rhs)
 Determines if two iterators are equal.
 
difference_type operator- (const iota_iterator &lhs, const iota_iterator &rhs)
 Determines the distance between two iterators.
 

Detailed Description

template<typename T>
class halcheck::lib::iota_iterator< T >

An iterator pointing to an integral value.

Template Parameters
TThe type of value to point to.

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