Everett
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
everett::typed_scan< S, World >::iterator Struct Reference

#include <typed_scan.h>

Public Types

using value_type = row_type
 
using difference_type = std::ptrdiff_t
 
using iterator_concept = std::forward_iterator_tag
 
using iterator_category = std::input_iterator_tag
 

Public Member Functions

 iterator ()=default
 
value_type operator* () const
 
iterator & operator++ ()
 
iterator operator++ (int)
 

Private Member Functions

 iterator (typed_scan const &value)
 
bool at_end () const
 
bool same_position (iterator const &other) const
 
void settle ()
 

Private Attributes

friend typed_scan
 
std::shared_ptr< typed_scan > state_
 

Friends

bool operator== (iterator const &a, iterator const &b)
 
bool operator== (iterator const &value, std::default_sentinel_t)
 

Member Typedef Documentation

◆ difference_type

template<class S , class World >
using everett::typed_scan< S, World >::iterator::difference_type = std::ptrdiff_t

◆ iterator_category

template<class S , class World >
using everett::typed_scan< S, World >::iterator::iterator_category = std::input_iterator_tag

◆ iterator_concept

template<class S , class World >
using everett::typed_scan< S, World >::iterator::iterator_concept = std::forward_iterator_tag

◆ value_type

template<class S , class World >
using everett::typed_scan< S, World >::iterator::value_type = row_type

Constructor & Destructor Documentation

◆ iterator() [1/2]

template<class S , class World >
everett::typed_scan< S, World >::iterator::iterator ( )
default

◆ iterator() [2/2]

template<class S , class World >
everett::typed_scan< S, World >::iterator::iterator ( typed_scan const &  value)
inlineexplicitprivate

Member Function Documentation

◆ at_end()

template<class S , class World >
bool everett::typed_scan< S, World >::iterator::at_end ( ) const
inlineprivate

◆ operator*()

template<class S , class World >
value_type everett::typed_scan< S, World >::iterator::operator* ( ) const
inline

◆ operator++() [1/2]

template<class S , class World >
iterator & everett::typed_scan< S, World >::iterator::operator++ ( )
inline

◆ operator++() [2/2]

template<class S , class World >
iterator everett::typed_scan< S, World >::iterator::operator++ ( int  )
inline

◆ same_position()

template<class S , class World >
bool everett::typed_scan< S, World >::iterator::same_position ( iterator const &  other) const
inlineprivate

◆ settle()

template<class S , class World >
void everett::typed_scan< S, World >::iterator::settle ( )
inlineprivate

Friends And Related Symbol Documentation

◆ operator== [1/2]

template<class S , class World >
bool operator== ( iterator const &  a,
iterator const &  b 
)
friend

◆ operator== [2/2]

template<class S , class World >
bool operator== ( iterator const &  value,
std::default_sentinel_t   
)
friend

Member Data Documentation

◆ state_

template<class S , class World >
std::shared_ptr<typed_scan> everett::typed_scan< S, World >::iterator::state_
private

◆ typed_scan

template<class S , class World >
friend everett::typed_scan< S, World >::iterator::typed_scan
private

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