Core::PreorderNodeTreeIterator
#include "Core/Nodes/Iterators.h"
Inherits from ForwardIteratorBase< PreorderNodeTreeIterator, Node, false >
Protected Types
Name | |
---|---|
using PreorderNodeTreeIterator | Iterator |
using ForwardIteratorBase< PreorderNodeTreeIterator, Node, false > | Super |
Public Functions
Name | |
---|---|
PreorderNodeTreeIterator() | |
PreorderNodeTreeIterator(Node * root, int connectionType =-1) | |
reference | dereference() const |
bool | equals(const Iterator & b) const |
void | next() |
pointer | ptr() const |
bool | valid() const |
Protected Attributes
Name | |
---|---|
int | m_connectionType <br>Type of connections the iterator considers, corresponds to EValueType enum, -1 for all. |
Node * | m_curr <br>Current node of the iterated (sub)tree, nullptr indicates invalid/after-end iterator. |
std::stack< Node *, std::vector< Node * > > | m_stack |
Additional inherited members
Public Types inherited from ForwardIteratorBase< PreorderNodeTreeIterator, Node, false >
Name | |
---|---|
using std::ptrdiff_t | difference_type |
using std::forward_iterator_tag | iterator_category |
using typename std::conditional< IsConst, const Value *, Value * >::type | pointer |
using typename std::conditional< IsConst, const Value &, Value & >::type | reference |
using typename std::conditional< IsConst, const Value, Value >::type | value_type |
Public Functions inherited from ForwardIteratorBase< PreorderNodeTreeIterator, Node, false >
Name | |
---|---|
reference | operator*() |
Iterator & | operator++() |
Iterator | operator++(int ) |
pointer | operator->() |
Protected Functions inherited from ForwardIteratorBase< PreorderNodeTreeIterator, Node, false >
Name | |
---|---|
ForwardIteratorBase() | |
Iterator * | self()<br>CRTP self pointer (pointer to the derived type) |
const Iterator * | self() const<br>CRTP const self pointer. |
Friends inherited from ForwardIteratorBase< PreorderNodeTreeIterator, Node, false >
Name | |
---|---|
bool | operator!=(const Iterator & a, const Iterator & b) |
bool | operator==(const Iterator & a, const Iterator & b) |
Protected Types Documentation
using Iterator
cpp
using Core::PreorderNodeTreeIterator::Iterator = PreorderNodeTreeIterator;
using Core::PreorderNodeTreeIterator::Iterator = PreorderNodeTreeIterator;
using Super
cpp
using Core::PreorderNodeTreeIterator::Super = ForwardIteratorBase<PreorderNodeTreeIterator, Node, false>;
using Core::PreorderNodeTreeIterator::Super = ForwardIteratorBase<PreorderNodeTreeIterator, Node, false>;
Public Functions Documentation
function PreorderNodeTreeIterator
cpp
inline PreorderNodeTreeIterator()
inline PreorderNodeTreeIterator()
function PreorderNodeTreeIterator
cpp
inline PreorderNodeTreeIterator(
Node * root,
int connectionType =-1
)
inline PreorderNodeTreeIterator(
Node * root,
int connectionType =-1
)
function dereference
cpp
inline reference dereference() const
inline reference dereference() const
function equals
cpp
inline bool equals(
const Iterator & b
) const
inline bool equals(
const Iterator & b
) const
function next
cpp
inline void next()
inline void next()
function ptr
cpp
inline pointer ptr() const
inline pointer ptr() const
function valid
cpp
inline bool valid() const
inline bool valid() const
Protected Attributes Documentation
variable m_connectionType
cpp
int m_connectionType {-1};
int m_connectionType {-1};
Type of connections the iterator considers, corresponds to EValueType enum, -1 for all.
variable m_curr
cpp
Node * m_curr {nullptr};
Node * m_curr {nullptr};
Current node of the iterated (sub)tree, nullptr indicates invalid/after-end iterator.
variable m_stack
cpp
std::stack< Node *, std::vector< Node * > > m_stack;
std::stack< Node *, std::vector< Node * > > m_stack;
Updated on 2025-05-31 at 12:55:31 +0000