3Depict
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Namespaces | Functions
tree.hh File Reference
#include <cassert>
#include <cstddef>
#include <memory>
#include <stdexcept>
#include <iterator>
#include <set>
#include <queue>
#include <algorithm>
Include dependency graph for tree.hh:
This graph shows which files directly or indirectly include this file:

Classes

class  tree_node_< T >
 A node in the tree, combining links to other nodes as well as the actual data. More...
 
class  tree< T, tree_node_allocator >
 
class  tree< T, tree_node_allocator >::iterator_base
 Base class for iterators, only pointers stored, no traversal logic. More...
 
class  tree< T, tree_node_allocator >::pre_order_iterator
 Depth-first iterator, first accessing the node, then its children. More...
 
class  tree< T, tree_node_allocator >::post_order_iterator
 Depth-first iterator, first accessing the children, then the node itself. More...
 
class  tree< T, tree_node_allocator >::breadth_first_queued_iterator
 Breadth-first iterator, using a queue. More...
 
class  tree< T, tree_node_allocator >::fixed_depth_iterator
 Iterator which traverses only the nodes at a given depth from the root. More...
 
class  tree< T, tree_node_allocator >::sibling_iterator
 Iterator which traverses only the nodes which are siblings of each other. More...
 
class  tree< T, tree_node_allocator >::leaf_iterator
 Iterator which traverses only the leaves. More...
 
class  tree< T, tree_node_allocator >::iterator_base_less
 Comparator class for iterators (compares pointer values; why doesn't this work automatically?) More...
 

Namespaces

 kp
 

Functions

template<class T1 , class T2 >
void kp::constructor (T1 *p, T2 &val)
 
template<class T1 >
void kp::constructor (T1 *p)
 
template<class T1 >
void kp::destructor (T1 *p)