Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

immer::detail::dvektor::iterator< T, B, MP > Struct Template Reference

#include <dvektor_impl.hpp>

+ Inheritance diagram for immer::detail::dvektor::iterator< T, B, MP >:
+ Collaboration diagram for immer::detail::dvektor::iterator< T, B, MP >:

Classes

struct  end_t
 

Public Member Functions

 iterator ()=default
 
 iterator (const impl< T, B, MP > &v)
 
 iterator (const impl< T, B, MP > &v, end_t)
 

Private Types

using leaf_iterator = typename leaf_node< T, B >::const_iterator
 

Private Member Functions

void increment ()
 
void decrement ()
 
void advance (std::ptrdiff_t n)
 
bool equal (const iterator &other) const
 
std::ptrdiff_t distance_to (const iterator &other) const
 
const T & dereference () const
 

Private Attributes

ref< T, B, MP > p_
 
std::size_t i_
 
std::size_t base_
 
leaf_iterator curr_
 

Detailed Description

template<typename T, int B, typename MP>
struct immer::detail::dvektor::iterator< T, B, MP >

Definition at line 411 of file dvektor_impl.hpp.

Member Typedef Documentation

◆ leaf_iterator

template<typename T , int B, typename MP >
using immer::detail::dvektor::iterator< T, B, MP >::leaf_iterator = typename leaf_node<T, B>::const_iterator
private

Definition at line 445 of file dvektor_impl.hpp.

Constructor & Destructor Documentation

◆ iterator() [1/3]

template<typename T , int B, typename MP >
immer::detail::dvektor::iterator< T, B, MP >::iterator ( )
default

◆ iterator() [2/3]

template<typename T , int B, typename MP >
immer::detail::dvektor::iterator< T, B, MP >::iterator ( const impl< T, B, MP > &  v)
inline

Definition at line 421 of file dvektor_impl.hpp.

References immer::detail::dvektor::impl< T, B, MP >::p.

◆ iterator() [3/3]

template<typename T , int B, typename MP >
immer::detail::dvektor::iterator< T, B, MP >::iterator ( const impl< T, B, MP > &  v,
end_t   
)
inline

Definition at line 432 of file dvektor_impl.hpp.

References immer::detail::dvektor::impl< T, B, MP >::p.

Member Function Documentation

◆ advance()

◆ decrement()

◆ dereference()

template<typename T , int B, typename MP >
const T& immer::detail::dvektor::iterator< T, B, MP >::dereference ( ) const
inlineprivate

◆ distance_to()

template<typename T , int B, typename MP >
std::ptrdiff_t immer::detail::dvektor::iterator< T, B, MP >::distance_to ( const iterator< T, B, MP > &  other) const
inlineprivate

◆ equal()

template<typename T , int B, typename MP >
bool immer::detail::dvektor::iterator< T, B, MP >::equal ( const iterator< T, B, MP > &  other) const
inlineprivate

◆ increment()

Member Data Documentation

◆ base_

◆ curr_

◆ i_

◆ p_


The documentation for this struct was generated from the following file:
Released under the MIT license