Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::For_Each_In_Order< Node > Class Template Reference

Generic inorder traversal of a binary tree. More...

#include <tpl_binNodeUtils.H>

Public Member Functions

template<class Op >
void traverse (Node *root, Op &&op) const
 Invoke to traversal from root node.
 
template<class Op >
void operator() (Node *root, Op &op) const
 
template<class Op >
void operator() (Node *root, Op &&op) const
 

Static Private Member Functions

template<class Op >
static void for_each_inorder (Node *root, Op &&op)
 

Detailed Description

template<class Node>
class Aleph::For_Each_In_Order< Node >

Generic inorder traversal of a binary tree.

For_Each_In_Order traverses a binary tree in order. For each is node is called an operation with the following signature:

struct Op { void operator () (Node * p) { operation } };

Definition at line 212 of file tpl_binNodeUtils.H.

Member Function Documentation

◆ for_each_inorder()

◆ operator()() [1/2]

template<class Node >
template<class Op >
void Aleph::For_Each_In_Order< Node >::operator() ( Node root,
Op &&  op 
) const
inline

◆ operator()() [2/2]

template<class Node >
template<class Op >
void Aleph::For_Each_In_Order< Node >::operator() ( Node root,
Op op 
) const
inline

◆ traverse()

template<class Node >
template<class Op >
Aleph::For_Each_In_Order< Node >::traverse ( Node root,
Op &&  op 
) const
inline

Invoke to traversal from root node.

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 228 of file tpl_binNodeUtils.H.

References Aleph::For_Each_In_Order< Node >::for_each_inorder(), and root().


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