guanaqo 1.0.0-alpha.24
Utilities for scientific software
Loading...
Searching...
No Matches
guanaqo::enumerate_t< Rng >::iter_t Struct Reference

#include <guanaqo/enumerate.hpp>

Detailed Description

template<class Rng>
struct guanaqo::enumerate_t< Rng >::iter_t

Definition at line 28 of file enumerate.hpp.

Collaboration diagram for guanaqo::enumerate_t< Rng >::iter_t:

Public Types

using index_t = std::ranges::range_difference_t<Rng>
using difference_type = std::ptrdiff_t
using value_type = std::tuple<index_t, decltype(*it)>

Public Member Functions

 iter_t ()=default
 iter_t (begin_t &&it)
bool operator!= (sentinel_t s) const
bool operator== (sentinel_t s) const
iter_toperator++ ()
iter_t operator++ (int) const
value_type operator* () const

Public Attributes

index_t index {}
begin_t it

Friends

bool operator!= (sentinel_t s, const iter_t &i)
bool operator== (sentinel_t s, const iter_t &i)

Member Typedef Documentation

◆ index_t

template<class Rng>
using guanaqo::enumerate_t< Rng >::iter_t::index_t = std::ranges::range_difference_t<Rng>

Definition at line 33 of file enumerate.hpp.

◆ difference_type

template<class Rng>
using guanaqo::enumerate_t< Rng >::iter_t::difference_type = std::ptrdiff_t

Definition at line 37 of file enumerate.hpp.

◆ value_type

template<class Rng>
using guanaqo::enumerate_t< Rng >::iter_t::value_type = std::tuple<index_t, decltype(*it)>

Definition at line 38 of file enumerate.hpp.

Constructor & Destructor Documentation

◆ iter_t() [1/2]

template<class Rng>
guanaqo::enumerate_t< Rng >::iter_t::iter_t ( )
default
Here is the caller graph for this function:

◆ iter_t() [2/2]

template<class Rng>
guanaqo::enumerate_t< Rng >::iter_t::iter_t ( begin_t && it)
inline

Definition at line 31 of file enumerate.hpp.

Member Function Documentation

◆ operator!=()

template<class Rng>
bool guanaqo::enumerate_t< Rng >::iter_t::operator!= ( sentinel_t s) const
inline

Definition at line 40 of file enumerate.hpp.

◆ operator==()

template<class Rng>
bool guanaqo::enumerate_t< Rng >::iter_t::operator== ( sentinel_t s) const
inline

Definition at line 41 of file enumerate.hpp.

◆ operator++() [1/2]

template<class Rng>
iter_t & guanaqo::enumerate_t< Rng >::iter_t::operator++ ( )
inline

Definition at line 46 of file enumerate.hpp.

Here is the call graph for this function:

◆ operator++() [2/2]

template<class Rng>
iter_t guanaqo::enumerate_t< Rng >::iter_t::operator++ ( int ) const
inline

Definition at line 51 of file enumerate.hpp.

Here is the call graph for this function:

◆ operator*()

template<class Rng>
value_type guanaqo::enumerate_t< Rng >::iter_t::operator* ( ) const
inline

Definition at line 57 of file enumerate.hpp.

◆ operator!=

template<class Rng>
bool operator!= ( sentinel_t s,
const iter_t & i )
friend

Definition at line 43 of file enumerate.hpp.

◆ operator==

template<class Rng>
bool operator== ( sentinel_t s,
const iter_t & i )
friend

Definition at line 44 of file enumerate.hpp.

Member Data Documentation

◆ index

template<class Rng>
index_t guanaqo::enumerate_t< Rng >::iter_t::index {}

Definition at line 34 of file enumerate.hpp.

◆ it

template<class Rng>
begin_t guanaqo::enumerate_t< Rng >::iter_t::it

Definition at line 35 of file enumerate.hpp.


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