mdds
Public Types | Public Member Functions | List of all members
mdds::detail::mtv::const_iterator_base< _Trait, _NodeUpdateFunc, _NonConstItrBase > Class Template Reference
Inheritance diagram for mdds::detail::mtv::const_iterator_base< _Trait, _NodeUpdateFunc, _NonConstItrBase >:
mdds::detail::mtv::iterator_common_base< _Trait >

Public Types

typedef _NonConstItrBase iterator_base
 
typedef common_base::node value_type
 
typedef value_typepointer
 
typedef value_typereference
 
typedef ptrdiff_t difference_type
 
typedef std::bidirectional_iterator_tag iterator_category
 

Public Member Functions

 const_iterator_base (const base_iterator_type &pos, const base_iterator_type &end, size_type start_pos, size_type block_index)
 
 const_iterator_base (const iterator_base &other)
 
const value_typeoperator* () const
 
const value_typeoperator-> () const
 
const_iterator_baseoperator++ ()
 
const_iterator_baseoperator-- ()
 
bool operator== (const const_iterator_base &other) const
 
bool operator!= (const const_iterator_base &other) const
 
- Public Member Functions inherited from mdds::detail::mtv::iterator_common_base< _Trait >
bool operator== (const iterator_common_base &other) const
 
bool operator!= (const iterator_common_base &other) const
 
iterator_common_baseoperator= (const iterator_common_base &other)
 
void swap (iterator_common_base &other)
 
const nodeget_node () const
 
const base_iterator_type & get_pos () const
 
const base_iterator_type & get_end () const
 

Additional Inherited Members

- Protected Types inherited from mdds::detail::mtv::iterator_common_base< _Trait >
typedef _Trait::parent parent_type
 
typedef _Trait::blocks blocks_type
 
typedef _Trait::base_iterator base_iterator_type
 
typedef parent_type::size_type size_type
 
typedef iterator_value_node< size_type, typename parent_type::element_block_type > node
 
- Protected Member Functions inherited from mdds::detail::mtv::iterator_common_base< _Trait >
 iterator_common_base (const base_iterator_type &pos, const base_iterator_type &end, size_type start_pos, size_type block_index)
 
 iterator_common_base (const iterator_common_base &other)
 
void update_node ()
 
nodeinc ()
 
nodedec ()
 
- Protected Attributes inherited from mdds::detail::mtv::iterator_common_base< _Trait >
node m_cur_node
 
base_iterator_type m_pos
 
base_iterator_type m_end
 

Constructor & Destructor Documentation

◆ const_iterator_base()

template<typename _Trait , typename _NodeUpdateFunc , typename _NonConstItrBase >
mdds::detail::mtv::const_iterator_base< _Trait, _NodeUpdateFunc, _NonConstItrBase >::const_iterator_base ( const iterator_base &  other)
inline

Take the non-const iterator counterpart to create a const iterator.