kblib 0.2.3
General utilities library for modern C++
kblib::zip_iterator< It1, It1, It2 > Struct Template Reference

#include <kblib/iterators.h>

Public Member Functions

auto operator++ () noexcept(noexcept(++pos1)) -> zip_iterator &
 
auto operator++ (int) noexcept(is_nothrow_copyable and noexcept(++pos1)) -> const zip_iterator
 
auto operator* () -> auto
 
auto begin () const noexcept(is_nothrow_copyable) -> zip_iterator
 
auto end () const noexcept(std::is_nothrow_copy_constructible< It1 >::value) -> zip_iterator
 

Public Attributes

It1 pos1 {}
 
It1 end1 {}
 
It2 pos2 {}
 

Static Public Attributes

static constexpr bool is_nothrow_copyable
 

Friends

auto operator== (const zip_iterator &z1, const zip_iterator &z2) noexcept(noexcept(z1.pos1==z2.pos1)) -> bool
 
auto operator!= (const zip_iterator &z1, const zip_iterator &z2) noexcept(noexcept(z1.pos1==z2.pos1)) -> bool
 

Detailed Description

template<typename It1, typename It2>
struct kblib::zip_iterator< It1, It1, It2 >

Definition at line 1394 of file iterators.h.

Member Function Documentation

◆ begin()

template<typename It1 , typename It2 >
auto kblib::zip_iterator< It1, It1, It2 >::begin ( ) const -> zip_iterator
inlinenoexcept

Definition at line 1420 of file iterators.h.

◆ end()

template<typename It1 , typename It2 >
auto kblib::zip_iterator< It1, It1, It2 >::end ( ) const -> zip_iterator
inlinenoexcept

Definition at line 1424 of file iterators.h.

◆ operator*()

template<typename It1 , typename It2 >
auto kblib::zip_iterator< It1, It1, It2 >::operator* ( ) -> auto
inline

Definition at line 1416 of file iterators.h.

◆ operator++() [1/2]

template<typename It1 , typename It2 >
auto kblib::zip_iterator< It1, It1, It2 >::operator++ ( ) -> zip_iterator&
inlinenoexcept

Definition at line 1403 of file iterators.h.

◆ operator++() [2/2]

template<typename It1 , typename It2 >
auto kblib::zip_iterator< It1, It1, It2 >::operator++ ( int  ) -> const zip_iterator
inlinenoexcept

Definition at line 1408 of file iterators.h.

Friends And Related Function Documentation

◆ operator!=

template<typename It1 , typename It2 >
auto operator!= ( const zip_iterator< It1, It1, It2 > &  z1,
const zip_iterator< It1, It1, It2 > &  z2 
) -> bool
friend

Definition at line 1435 of file iterators.h.

◆ operator==

template<typename It1 , typename It2 >
auto operator== ( const zip_iterator< It1, It1, It2 > &  z1,
const zip_iterator< It1, It1, It2 > &  z2 
) -> bool
friend

Definition at line 1430 of file iterators.h.

Member Data Documentation

◆ end1

template<typename It1 , typename It2 >
It1 kblib::zip_iterator< It1, It1, It2 >::end1 {}

Definition at line 1396 of file iterators.h.

◆ is_nothrow_copyable

template<typename It1 , typename It2 >
constexpr bool kblib::zip_iterator< It1, It1, It2 >::is_nothrow_copyable
staticconstexpr
Initial value:
= std::is_nothrow_copy_constructible<It1>::value
and std::is_nothrow_copy_constructible<It2>::value

Definition at line 1399 of file iterators.h.

◆ pos1

template<typename It1 , typename It2 >
It1 kblib::zip_iterator< It1, It1, It2 >::pos1 {}

Definition at line 1395 of file iterators.h.

◆ pos2

template<typename It1 , typename It2 >
It2 kblib::zip_iterator< It1, It1, It2 >::pos2 {}

Definition at line 1397 of file iterators.h.


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