liborigin2: tree_node_< T > Class Template Reference

liborigin2 29/08/2011

Public Member Functions | Public Attributes | List of all members
tree_node_< T > Class Template Reference

A node in the tree, combining links to other nodes as well as the actual data. More...

`#include <tree.hh>`

## Public Member Functions
| tree_node_ ()
| tree_node_ (const T &)

## Public Attributes
T | data
tree_node_< T > * | first_child
tree_node_< T > * | last_child
tree_node_< T > * | next_sibling
tree_node_< T > * | parent
tree_node_< T > * | prev_sibling

## Detailed Description

### template<class T>
class tree_node_< T >

A node in the tree, combining links to other nodes as well as the actual data.

## Constructor & Destructor Documentation

## ◆ tree_node_() [1/2]

template<class T >

tree_node_< T >::tree_node_ | ( |  | ) |

## ◆ tree_node_() [2/2]

template<class T >

tree_node_< T >::tree_node_ | ( | const T & | val | ) |

## Member Data Documentation

## ◆ data

template<class T>

T tree_node_< T >::data

Referenced by tree< T, tree_node_allocator >::compare_nodes< StrictWeakOrdering >::operator()(), and tree< Origin::ProjectNode >::replace().

## ◆ first_child

template<class T>

tree_node_<T>* tree_node_< T >::first_child

Referenced by tree< Origin::ProjectNode >::append_child(), tree< Origin::ProjectNode >::begin_fixed(), tree< Origin::ProjectNode >::begin_leaf(), tree< Origin::ProjectNode >::begin_post(), tree< Origin::ProjectNode >::end_fixed(), tree< Origin::ProjectNode >::flatten(), tree< Origin::ProjectNode >::head_initialise_(), tree< Origin::ProjectNode >::insert(), tree< Origin::ProjectNode >::insert_after(), tree< Origin::ProjectNode >::max_depth(), tree< Origin::ProjectNode >::move_before(), tree< Origin::ProjectNode >::move_ontop(), tree< T, tree_node_allocator >::iterator_base::number_of_children(), tree< Origin::ProjectNode >::prepend_child(), tree< T, tree_node_allocator >::sibling_iterator::range_first(), tree< Origin::ProjectNode >::replace(), and tree< Origin::ProjectNode >::swap().

## ◆ last_child

template<class T>

tree_node_<T> * tree_node_< T >::last_child

Referenced by tree< Origin::ProjectNode >::append_child(), tree< Origin::ProjectNode >::head_initialise_(), tree< Origin::ProjectNode >::insert(), tree< Origin::ProjectNode >::insert_after(), tree< Origin::ProjectNode >::move_before(), tree< Origin::ProjectNode >::move_ontop(), tree< T, tree_node_allocator >::iterator_base::number_of_children(), tree< Origin::ProjectNode >::prepend_child(), tree< T, tree_node_allocator >::sibling_iterator::range_last(), tree< Origin::ProjectNode >::reparent(), tree< Origin::ProjectNode >::replace(), and tree< Origin::ProjectNode >::swap().

## ◆ next_sibling

template<class T>

tree_node_<T> * tree_node_< T >::next_sibling

Referenced by tree< Origin::ProjectNode >::append_child(), tree< Origin::ProjectNode >::begin(), tree< Origin::ProjectNode >::begin_breadth_first(), tree< Origin::ProjectNode >::begin_fixed(), tree< Origin::ProjectNode >::begin_leaf(), tree< Origin::ProjectNode >::begin_post(), tree< Origin::ProjectNode >::child(), tree< Origin::ProjectNode >::clear(), tree< Origin::ProjectNode >::end_fixed(), tree< Origin::ProjectNode >::erase(), tree< Origin::ProjectNode >::erase_children(), tree< Origin::ProjectNode >::flatten(), tree< Origin::ProjectNode >::head_initialise_(), tree< Origin::ProjectNode >::insert(), tree< Origin::ProjectNode >::insert_after(), tree< Origin::ProjectNode >::max_depth(), tree< Origin::ProjectNode >::move_after(), tree< Origin::ProjectNode >::move_before(), tree< Origin::ProjectNode >::move_ontop(), tree< T, tree_node_allocator >::iterator_base::number_of_children(), tree< Origin::ProjectNode >::number_of_children(), tree< Origin::ProjectNode >::number_of_siblings(), tree< Origin::ProjectNode >::prepend_child(), tree< Origin::ProjectNode >::reparent(), tree< Origin::ProjectNode >::replace(), tree< Origin::ProjectNode >::set_head(), tree< Origin::ProjectNode >::sibling(), tree< Origin::ProjectNode >::sort(), and tree< Origin::ProjectNode >::swap().

## ◆ parent

template<class T>

tree_node_<T>* tree_node_< T >::parent

Referenced by tree< Origin::ProjectNode >::append_child(), tree< Origin::ProjectNode >::begin_fixed(), tree< Origin::ProjectNode >::depth(), tree< Origin::ProjectNode >::erase(), tree< Origin::ProjectNode >::flatten(), tree< Origin::ProjectNode >::head_initialise_(), tree< Origin::ProjectNode >::insert(), tree< Origin::ProjectNode >::insert_after(), tree< Origin::ProjectNode >::max_depth(), tree< Origin::ProjectNode >::move_after(), tree< Origin::ProjectNode >::move_before(), tree< Origin::ProjectNode >::move_ontop(), tree< Origin::ProjectNode >::prepend_child(), tree< Origin::ProjectNode >::reparent(), tree< Origin::ProjectNode >::replace(), tree< Origin::ProjectNode >::sort(), and tree< Origin::ProjectNode >::swap().

## ◆ prev_sibling

template<class T>

tree_node_<T>* tree_node_< T >::prev_sibling

Referenced by tree< Origin::ProjectNode >::append_child(), tree< Origin::ProjectNode >::erase(), tree< Origin::ProjectNode >::head_initialise_(), tree< Origin::ProjectNode >::insert(), tree< Origin::ProjectNode >::insert_after(), tree< Origin::ProjectNode >::move_after(), tree< Origin::ProjectNode >::move_before(), tree< Origin::ProjectNode >::move_ontop(), tree< Origin::ProjectNode >::number_of_siblings(), tree< Origin::ProjectNode >::prepend_child(), tree< Origin::ProjectNode >::reparent(), tree< Origin::ProjectNode >::replace(), tree< Origin::ProjectNode >::sort(), and tree< Origin::ProjectNode >::swap().

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

- /build/liborigin2/src/liborigin2/tree.hh