cheshirekow  v0.1.0
mpblocks::redblack::Iterator< Traits > Struct Template Reference

implements red black trees from CLRS More...

#include <mpblocks/redblack/iterator.h>

Public Types

typedef Traits::NodeRef NodeRef
 
typedef Tree< Traits > Tree_t
 

Public Member Functions

 Iterator (Tree_t *tree, NodeRef node)
 
bool operator!= (const Iterator &other)
 comparison for range-based More...
 
auto operator* () -> decltype(tree->key(node))
 dereference to whatever key returns More...
 
Iterator< Traits > & operator++ ()
 increment operator More...
 
Iterator< Traits > & operator-- ()
 decrement operator More...
 

Public Attributes

NodeRef node
 
Tree_ttree
 

Detailed Description

template<class Traits>
struct mpblocks::redblack::Iterator< Traits >

implements red black trees from CLRS

Definition at line 38 of file iterator.h.

Member Typedef Documentation

template<class Traits >
typedef Traits::NodeRef mpblocks::redblack::Iterator< Traits >::NodeRef

Definition at line 39 of file iterator.h.

template<class Traits >
typedef Tree<Traits> mpblocks::redblack::Iterator< Traits >::Tree_t

Definition at line 40 of file iterator.h.

Constructor & Destructor Documentation

template<class Traits >
mpblocks::redblack::Iterator< Traits >::Iterator ( Tree_t tree,
NodeRef  node 
)
inline

Definition at line 48 of file iterator.h.

Member Function Documentation

template<class Traits >
bool mpblocks::redblack::Iterator< Traits >::operator!= ( const Iterator< Traits > &  other)
inline

comparison for range-based

Definition at line 63 of file iterator.h.

template<class Traits >
auto mpblocks::redblack::Iterator< Traits >::operator* ( ) -> decltype(tree->key(node))
inline

dereference to whatever key returns

Definition at line 46 of file iterator.h.

template<class Traits >
Iterator<Traits>& mpblocks::redblack::Iterator< Traits >::operator++ ( )
inline

increment operator

Definition at line 51 of file iterator.h.

template<class Traits >
Iterator<Traits>& mpblocks::redblack::Iterator< Traits >::operator-- ( )
inline

decrement operator

Definition at line 57 of file iterator.h.

Member Data Documentation

template<class Traits >
NodeRef mpblocks::redblack::Iterator< Traits >::node

Definition at line 43 of file iterator.h.

template<class Traits >
Tree_t* mpblocks::redblack::Iterator< Traits >::tree

Definition at line 42 of file iterator.h.


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