LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
util::details::zip_iterator< Lead > Class Template Reference

#include "zip.h"

Public Types

using difference_type = std::ptrdiff_t
 
using reference = std::tuple<>
 
using value_type = std::remove_cv_t< reference >
 
using pointer = std::add_pointer_t< std::remove_reference_t< reference >>
 
using iterator_category = std::forward_iterator_tag
 

Public Member Functions

 zip_iterator ()=default
 
std::tuple operator* () const
 
this_iterator_toperator++ ()
 Increments all the iterators. More...
 
this_iterator_t operator++ (int)
 
template<std::size_t OtherLead, typename... OtherIter>
bool operator!= (zip_iterator< OtherLead, OtherIter... > const &other) const
 
template<std::size_t OtherLead, typename... OtherIter>
bool operator== (zip_iterator< OtherLead, OtherIter... > const &other) const
 

Private Types

using this_iterator_t = zip_iterator< Lead >
 Type of this object. More...
 

Detailed Description

template<std::size_t Lead>
class util::details::zip_iterator< Lead >

Definition at line 225 of file zip.h.

Member Typedef Documentation

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::difference_type = std::ptrdiff_t

Definition at line 231 of file zip.h.

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::iterator_category = std::forward_iterator_tag

Definition at line 235 of file zip.h.

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::pointer = std::add_pointer_t<std::remove_reference_t<reference>>

Definition at line 234 of file zip.h.

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::reference = std::tuple<>

Definition at line 232 of file zip.h.

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::this_iterator_t = zip_iterator<Lead>
private

Type of this object.

Definition at line 228 of file zip.h.

template<std::size_t Lead>
using util::details::zip_iterator< Lead >::value_type = std::remove_cv_t<reference>

Definition at line 233 of file zip.h.

Constructor & Destructor Documentation

template<std::size_t Lead>
util::details::zip_iterator< Lead >::zip_iterator ( )
default

Member Function Documentation

template<std::size_t Lead>
template<std::size_t OtherLead, typename... OtherIter>
bool util::details::zip_iterator< Lead >::operator!= ( zip_iterator< OtherLead, OtherIter... > const &  other) const
inline

Definition at line 253 of file zip.h.

254  {
255  return false;
256  }
template<std::size_t Lead>
std::tuple util::details::zip_iterator< Lead >::operator* ( ) const
inline

Definition at line 239 of file zip.h.

239 { return {}; }
template<std::size_t Lead>
this_iterator_t& util::details::zip_iterator< Lead >::operator++ ( )
inline

Increments all the iterators.

Definition at line 242 of file zip.h.

242 { return *this; }
template<std::size_t Lead>
this_iterator_t util::details::zip_iterator< Lead >::operator++ ( int  )
inline

Definition at line 244 of file zip.h.

References util::details::zip_iterator< Lead, Iters >::operator++().

245  {
246  this_iterator_t old(*this);
247  operator++();
248  return old;
249  }
zip_iterator< Lead > this_iterator_t
Type of this object.
Definition: zip.h:228
this_iterator_t & operator++()
Increments all the iterators.
Definition: zip.h:242
template<std::size_t Lead>
template<std::size_t OtherLead, typename... OtherIter>
bool util::details::zip_iterator< Lead >::operator== ( zip_iterator< OtherLead, OtherIter... > const &  other) const
inline

Definition at line 260 of file zip.h.

261  {
262  return true;
263  }

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