Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

more::gen::ntree Class Template Reference

An general tree. More...

#include <more/gen/ntree.h>

Inheritance diagram for more::gen::ntree:

Inheritance graph
[legend]
List of all members.

Public Types

Public Methods


Detailed Description

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
class more::gen::ntree< T, BranchContainer, Allocator >

An general tree.

This is a alternative to the nary_tree, and this should work better with mutating algorithms.


Member Typedef Documentation

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef Allocator more::gen::ntree::allocator_type
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef branch_container::const_iterator more::gen::ntree::branch_const_iterator
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef node more::gen::ntree::branch_container
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef branch_container::iterator more::gen::ntree::branch_iterator
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef allocator_type::const_reference more::gen::ntree::const_reference
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef allocator_type::pointer more::gen::ntree::pointer
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef allocator_type::reference more::gen::ntree::reference
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef allocator_type::size_type more::gen::ntree::size_type
 

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
typedef allocator_type::value_type more::gen::ntree::value_type
 


Constructor & Destructor Documentation

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
more::gen::ntree< T, BranchContainer, Allocator >::ntree   [inline]
 

Construct a tree with a default constructed root node only.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
more::gen::ntree< T, BranchContainer, Allocator >::ntree const_reference    x [inline, explicit]
 

Construct a tree with only a root node of value x.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
more::gen::ntree< T, BranchContainer, Allocator >::ntree ntree< T, BranchContainer, Allocator > const &    t [inline]
 

Construct a deep copy of t.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
more::gen::ntree< T, BranchContainer, Allocator >::~ntree   [inline]
 

Destruct.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
more::gen::ntree< T, BranchContainer, Allocator >::ntree swapper const &    sw [inline]
 

Take the nodes of sw and replace them with none.


Member Function Documentation

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
branch_container& more::gen::ntree< T, BranchContainer, Allocator >::branches   [inline]
 

Return a container of the immediate branches.

The container has begin() and end() methods.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
branch_container const& more::gen::ntree< T, BranchContainer, Allocator >::branches   const [inline]
 

Return a container of the immediate branches.

The container has begin() and end() methods.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
void more::gen::ntree< T, BranchContainer, Allocator >::clear   [inline]
 

Clear all branches and set the root value to a default constructed instance of value_type.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
bool more::gen::ntree< T, BranchContainer, Allocator >::is_root   const [inline]
 

Return true if this tree's top node is the root of the whole tree.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
ntree& more::gen::ntree< T, BranchContainer, Allocator >::operator= swapper const &    sw [inline]
 

Swap nodes with sw.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
ntree& more::gen::ntree< T, BranchContainer, Allocator >::operator= ntree< T, BranchContainer, Allocator > const &    t [inline]
 

Assign a deep copy of t.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
bool more::gen::ntree< T, BranchContainer, Allocator >::operator== ntree< T, BranchContainer, Allocator > const &    rhs const [inline]
 

Return the result of a deep comparison with rhs.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
ntree const& more::gen::ntree< T, BranchContainer, Allocator >::stem   const [inline]
 

Return the tree of which this is a subtree.

Precondition:
The top node is not the root.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
ntree& more::gen::ntree< T, BranchContainer, Allocator >::stem   [inline]
 

Return the tree of which this is a subtree.

Precondition:
The top node is not the root.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
const_reference more::gen::ntree< T, BranchContainer, Allocator >::value   const [inline]
 

Return the value of the topmost node.

template<typename T, template< typename X, typename A > class BranchContainer = std::list, typename Allocator = gen::allocator<T>>
reference more::gen::ntree< T, BranchContainer, Allocator >::value   [inline]
 

Return the value of the topmost node.


The documentation for this class was generated from the following file:
Generated on Sat Sep 7 19:12:32 2002 for more with Doxygen 1.2.13.1. Doxygen 1.2.13.1 is written and copyright 1997-2002 by Dimitri van Heesch.