Base Framework
Public Types | Public Member Functions | List of all members
OrderedBinaryTree< TYPE, KEY >::Iterator Class Reference

#include <base/collection/OrderedBinaryTree.h>

Inherits InfixOrderIterator< TRAITS >.

Public Types

typedef OrderedBinaryTree::Value Value
 
typedef Value * Pointer
 
typedef Value & Reference
 
typedef MemoryDiff Distance
 
typedef ForwardIterator Category
 
- Public Types inherited from InfixOrderIterator< TRAITS >
typedef Iterator< TRAITS >::Value Value
 
typedef Iterator< TRAITS >::Reference Reference
 
typedef Iterator< TRAITS >::Pointer Pointer
 
typedef Iterator< TRAITS >::Distance Distance
 
typedef ForwardIterator Category
 
- Public Types inherited from Iterator< TRAITS >
typedef TRAITS::Value Value
 
typedef TRAITS::Distance Distance
 
typedef TRAITS::Reference Reference
 
typedef TRAITS::Pointer Pointer
 
typedef TRAITS::Category Category
 

Public Member Functions

 Iterator () noexcept
 
 Iterator (Node *node) noexcept
 
Pointer operator-> () const noexcept
 
Reference operator* () const noexcept
 
- Public Member Functions inherited from InfixOrderIterator< TRAITS >
 InfixOrderIterator (Pointer _root) noexcept
 
bool operator== (const InfixOrderIterator &compare) const noexcept
 
bool operator!= (const InfixOrderIterator &compare) const noexcept
 
InfixOrderIteratoroperator++ ()
 
InfixOrderIterator operator++ (int)
 
Pointer operator-> () const noexcept
 
Reference operator* () const noexcept
 
 operator bool () const noexcept
 

Detailed Description

template<class TYPE, class KEY = TYPE>
class OrderedBinaryTree< TYPE, KEY >::Iterator

Modifying iterator over values (NOT nodes).

Constructor & Destructor Documentation

◆ Iterator() [1/2]

template<class TYPE , class KEY = TYPE>
OrderedBinaryTree< TYPE, KEY >::Iterator::Iterator ( )
inlinenoexcept

Initialize as end iterator.

◆ Iterator() [2/2]

template<class TYPE , class KEY = TYPE>
OrderedBinaryTree< TYPE, KEY >::Iterator::Iterator ( Node node)
inlinenoexcept

Initialize by node.

Member Function Documentation

◆ operator*()

template<class TYPE , class KEY = TYPE>
Reference OrderedBinaryTree< TYPE, KEY >::Iterator::operator* ( ) const
inlinenoexcept

Dereference.

◆ operator->()

template<class TYPE , class KEY = TYPE>
Pointer OrderedBinaryTree< TYPE, KEY >::Iterator::operator-> ( ) const
inlinenoexcept

Dereference.