Public Types | Public Member Functions | Public Attributes | Private Types | List of all members
base_iterator< Value > Class Template Reference

Public Types

using difference_type = typename traits_t::difference_type
 
using value_type = typename traits_t::value_type
 
using pointer = typename traits_t::pointer
 
using reference = typename traits_t::reference
 
using iterator_category = typename traits_t::iterator_category
 

Public Member Functions

 base_iterator (pointer ptr=nullptr)
 
reference operator* () const
 
pointer operator-> () const
 
base_iteratoroperator++ ()
 
base_iteratoroperator-- ()
 
reference operator[] (difference_type offset) const
 
difference_type operator- (base_iterator const &other) const
 

Public Attributes

pointer ptr
 

Private Types

using traits_t = std::iterator_traits< Value * >
 

Detailed Description

template<typename Value>
class base_iterator< Value >

Definition at line 32 of file RangeForWrapper_test.cc.

Member Typedef Documentation

template<typename Value>
using base_iterator< Value >::difference_type = typename traits_t::difference_type

Definition at line 35 of file RangeForWrapper_test.cc.

template<typename Value>
using base_iterator< Value >::iterator_category = typename traits_t::iterator_category

Definition at line 39 of file RangeForWrapper_test.cc.

template<typename Value>
using base_iterator< Value >::pointer = typename traits_t::pointer

Definition at line 37 of file RangeForWrapper_test.cc.

template<typename Value>
using base_iterator< Value >::reference = typename traits_t::reference

Definition at line 38 of file RangeForWrapper_test.cc.

template<typename Value>
using base_iterator< Value >::traits_t = std::iterator_traits<Value*>
private

Definition at line 33 of file RangeForWrapper_test.cc.

template<typename Value>
using base_iterator< Value >::value_type = typename traits_t::value_type

Definition at line 36 of file RangeForWrapper_test.cc.

Constructor & Destructor Documentation

template<typename Value>
base_iterator< Value >::base_iterator ( pointer  ptr = nullptr)
inline

Definition at line 43 of file RangeForWrapper_test.cc.

43 : ptr(ptr) {}

Member Function Documentation

template<typename Value>
reference base_iterator< Value >::operator* ( ) const
inline

Definition at line 45 of file RangeForWrapper_test.cc.

45 { return *ptr; }
template<typename Value>
base_iterator& base_iterator< Value >::operator++ ( )
inline

Definition at line 48 of file RangeForWrapper_test.cc.

48 { ++ptr; return *this; }
template<typename Value>
difference_type base_iterator< Value >::operator- ( base_iterator< Value > const &  other) const
inline

Definition at line 53 of file RangeForWrapper_test.cc.

54  { return ptr - other.ptr; }
template<typename Value>
base_iterator& base_iterator< Value >::operator-- ( )
inline

Definition at line 49 of file RangeForWrapper_test.cc.

49 { --ptr; return *this; }
template<typename Value>
pointer base_iterator< Value >::operator-> ( ) const
inline

Definition at line 46 of file RangeForWrapper_test.cc.

46 { return ptr; }
template<typename Value>
reference base_iterator< Value >::operator[] ( difference_type  offset) const
inline

Definition at line 51 of file RangeForWrapper_test.cc.

51 { return ptr[offset]; }

Member Data Documentation

template<typename Value>
pointer base_iterator< Value >::ptr

Definition at line 41 of file RangeForWrapper_test.cc.


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