Krita Source Code Documentation
Loading...
Searching...
No Matches
KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const > Class Template Reference

#include <KisForest.h>

+ Inheritance diagram for KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >:

Public Types

using NodeType = std::add_const_if_t<is_const, Node<T>>
 
using value_type = T
 

Public Member Functions

 BaseIterator (NodeType *node)
 
NodeTypenode () const
 

Protected Attributes

NodeTypem_node
 

Private Member Functions

std::iterator_traits< BaseIterator >::reference dereference () const
 
bool equal (const BaseClass &other) const
 

Friends

class boost::iterator_core_access
 

Detailed Description

template<typename BaseClass, typename T, typename Tag, bool is_const>
class KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >

Definition at line 62 of file KisForest.h.

Member Typedef Documentation

◆ NodeType

template<typename BaseClass , typename T , typename Tag , bool is_const>
using KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::NodeType = std::add_const_if_t<is_const, Node<T>>

Definition at line 71 of file KisForest.h.

◆ value_type

template<typename BaseClass , typename T , typename Tag , bool is_const>
using KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::value_type = T

Definition at line 70 of file KisForest.h.

Constructor & Destructor Documentation

◆ BaseIterator()

template<typename BaseClass , typename T , typename Tag , bool is_const>
KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::BaseIterator ( NodeType * node)
inline

Definition at line 73 of file KisForest.h.

74 : m_node(node)
75 {
76 }
NodeType * node() const
Definition KisForest.h:78

Member Function Documentation

◆ dereference()

template<typename BaseClass , typename T , typename Tag , bool is_const>
std::iterator_traits< BaseIterator >::reference KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::dereference ( ) const
inlineprivate

Definition at line 85 of file KisForest.h.

85 {
87 return m_node->value;
88 }
#define KIS_ASSERT(cond)
Definition kis_assert.h:33

References KIS_ASSERT, and KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::m_node.

◆ equal()

template<typename BaseClass , typename T , typename Tag , bool is_const>
bool KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::equal ( const BaseClass & other) const
inlineprivate

Definition at line 90 of file KisForest.h.

90 {
91 return m_node == other.m_node;
92 }

References KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::m_node.

◆ node()

template<typename BaseClass , typename T , typename Tag , bool is_const>
NodeType * KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::node ( ) const
inline

Definition at line 78 of file KisForest.h.

78 {
79 return m_node;
80 }

References KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::m_node.

Friends And Related Symbol Documentation

◆ boost::iterator_core_access

template<typename BaseClass , typename T , typename Tag , bool is_const>
friend class boost::iterator_core_access
friend

Definition at line 83 of file KisForest.h.

Member Data Documentation

◆ m_node

template<typename BaseClass , typename T , typename Tag , bool is_const>
NodeType* KisForestDetail::BaseIterator< BaseClass, T, Tag, is_const >::m_node
protected

Definition at line 95 of file KisForest.h.


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