__Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc > Class Template Reference
[Classes and types for internal use]

Tree base class without data hooks. More...

#include <vgtl_tree.h>

Inheritance diagram for __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >:

Inheritance graph
[legend]
Collaboration diagram for __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef _Tp value_type
typedef _Node node_type
typedef value_typepointer
typedef const value_typeconst_pointer
typedef value_typereference
typedef const value_typeconst_reference
typedef size_t size_type
typedef ptrdiff_t difference_type
typedef _Tree_iterator< _Tp,
_Tp &, _Tp *, container_type,
container_iterator > 
iterator
typedef _Tree_iterator< _Tp,
const _Tp &, const _Tp
*, container_type,
container_iterator > 
const_iterator
typedef reverse_iterator
< const_iterator
const_reverse_iterator
typedef reverse_iterator
< iterator
reverse_iterator
typedef _Tree_walker< _Tp, _Tp
&, _Tp *, container_type,
container_iterator > 
walker
typedef _Tree_walker< _Tp,
const _Tp &, const _Tp
*, container_type,
container_iterator > 
const_walker
typedef _Node node_type
typedef _Tree_iterator< _Tp,
_Tp &, _Tp *, container_type,
children_iterator, node_type
iterator
typedef _Tree_iterator< _Tp,
const _Tp &, const _Tp
*, container_type,
children_iterator, node_type
const_iterator
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
typedef std::reverse_iterator
< iterator
reverse_iterator
typedef _Iterator children_iterator
typedef __one_iterator< void * > parents_iterator
typedef _Iterator children_iterator
typedef __one_iterator< void * > parents_iterator

Public Member Functions

allocator_type get_allocator () const
bool empty () const
size_type max_size () const
void insert_child (const __walker_base &__position, const _Tp &__x, const container_insert_arg &__It)
void insert_child (const __walker_base &__position, const container_insert_arg &__It)
void insert_children (const __walker_base &__position, size_type __n, const _Tp &__x, const container_iterator &__It)
void erase (const __walker_base &__position)
_Nodeerase_tree (const __walker_base &__position)
bool erase_child (const __walker_base &__position, const container_iterator &__It)
_Nodeerase_subtree (const __walker_base &__position, const container_iterator &__It)
size_type depth (const recursive_walker &__position)
 __Tree (const allocator_type &__a=allocator_type())
walker ground ()
const_walker ground () const
walker root (children_iterator __it)
const_walker root (children_iterator __it) const
walker root ()
const_walker root () const
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
reverse_iterator rbegin ()
reverse_iterator rend ()
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const
reference getroot ()
const_reference getroot () const
 __Tree (size_type __n, const _Tp &__value, const allocator_type &__a=allocator_type())
 __Tree (size_type __n)
 __Tree (const _Self &__x)
virtual ~__Tree ()
_Selfoperator= (const _Self &__x)
_Selfoperator= (_Node *__x)
void swap (_Self &__x)
void insert_subtree (const __walker_base &__position, _Self &__subtree, const children_iterator &__It)
void clear_children ()
void add_all_children (_Output_Iterator fi, _Node *_parent)
void add_all_children (_Output_Iterator fi, _Node *_parent)

Protected Member Functions

_Node_C_create_node (const _Tp &__x)
_Node_C_create_node ()
_Node_C_get_node ()
void _C_put_node (_Node *__p)
void _C_put_node (_Node *__p)
void _C_put_node (_Node *__p)
void _C_put_node (_Node *__p)

Protected Attributes

_Node_C_node

Friends

bool operator==__VGTL_NULL_TMPL_ARGS (const __Tree &__x, const __Tree &__y)


Detailed Description

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
class __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >

This is the base class for all trees without data hooks

Definition at line 1234 of file vgtl_graph.h.


Member Typedef Documentation

typedef _Iterator _Tree_base< _Tp , _Ctr , _Iterator , _Alloc >::children_iterator [inherited]

iterator for accessing the children

Definition at line 1445 of file vgtl_tree.h.

typedef _Iterator __Tree_t< _Tp , _Ctr , _Iterator , _Inserter , _Tree_node< _Tp, _Ctr, _Iterator > , _Alloc >::children_iterator [inherited]

iterator for accessing the children

Reimplemented from _Tree_base< _Tp, _Ctr, _Iterator, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1563 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_iterator<_Tp,const _Tp&,const _Tp*,container_type,children_iterator,node_type> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_iterator

the const iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1901 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_iterator<_Tp,const _Tp&,const _Tp*,container_type,container_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_iterator

the const iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1263 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef const value_type* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_pointer

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1251 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef const value_type& __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_reference

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1253 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef std::reverse_iterator<const_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_reverse_iterator

the const reverse iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1905 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef reverse_iterator<const_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_reverse_iterator

the const reverse iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1266 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_walker<_Tp,const _Tp&,const _Tp*,container_type,container_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::const_walker

the (recursive) const walker

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1278 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef ptrdiff_t __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::difference_type

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1255 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_iterator<_Tp,_Tp&,_Tp*,container_type,children_iterator,node_type> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::iterator

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_iterator<_Tp,_Tp&,_Tp*,container_type,container_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::iterator

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Node __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::node_type

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1895 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Node __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::node_type

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1249 of file vgtl_graph.h.

typedef __one_iterator<void *> _Tree_base< _Tp , _Ctr , _Iterator , _Alloc >::parents_iterator [inherited]

iterator for accessing the parents

Definition at line 1447 of file vgtl_tree.h.

typedef __one_iterator<void *> __Tree_t< _Tp , _Ctr , _Iterator , _Inserter , _Tree_node< _Tp, _Ctr, _Iterator > , _Alloc >::parents_iterator [inherited]

iterator for accessing the parents

Reimplemented from _Tree_base< _Tp, _Ctr, _Iterator, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1564 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef value_type* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::pointer

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1250 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef value_type& __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::reference

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1252 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef std::reverse_iterator<iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::reverse_iterator

the reverse iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1907 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef reverse_iterator<iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::reverse_iterator

the reverse iterator

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1267 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef size_t __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::size_type

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1254 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tp __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::value_type

standard typedef

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1248 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
typedef _Tree_walker<_Tp,_Tp&,_Tp*,container_type,container_iterator> __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::walker

the (recursive) walker

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1277 of file vgtl_graph.h.


Constructor & Destructor Documentation

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
__Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::__Tree ( const allocator_type &  __a = allocator_type()  )  [inline, explicit]

standard constructor

Definition at line 1932 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
__Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::__Tree ( size_type  __n,
const _Tp &  __value,
const allocator_type &  __a = allocator_type() 
) [inline]

construct a tree containing __n nodes with value __value at the root spot.

Definition at line 2004 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
__Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::__Tree ( size_type  __n  )  [inline, explicit]

construct a tree containing __n nodes with default value at the root spot.

Definition at line 2011 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
__Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::__Tree ( const _Self __x  )  [inline]

copy constructor

Definition at line 2016 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
virtual __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::~__Tree (  )  [inline, virtual]

standard destructor

Definition at line 2019 of file vgtl_tree.h.


Member Function Documentation

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Node* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::_C_create_node (  )  [inline, protected]

construct a new tree node containing default data

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1308 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Node* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::_C_create_node ( const _Tp &  __x  )  [inline, protected]

construct a new tree node containing data __x

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1295 of file vgtl_graph.h.

_Node* _Tree_alloc_base< _Tp , _Ctr , _Iterator , _Node , _IsStatic >::_C_get_node (  )  [inline, protected, inherited]

allocate a new node

Definition at line 1375 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _TI, class _Allocator, bool _IsStatic>
void _Tree_alloc_base< _Tp, _Ctr, _TI, _Allocator, _IsStatic >::_C_put_node ( _Node *  __p  )  [inline, protected, inherited]

deallocate a node

Definition at line 1378 of file vgtl_tree.h.

void _Tree_alloc_base< _Tp , _Ctr , _Iterator , _Node , _IsStatic >::_C_put_node ( _Node *  __p  )  [inline, protected, inherited]

deallocate a node

Definition at line 1378 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _TI, class _Allocator, bool _IsStatic>
void _Tree_alloc_base< _Tp, _Ctr, _TI, _Allocator, _IsStatic >::_C_put_node ( _Node *  __p  )  [inline, protected, inherited]

deallocate a node

Definition at line 1378 of file vgtl_tree.h.

void _Tree_alloc_base< _Tp , _Ctr , _Iterator , _Node , _IsStatic >::_C_put_node ( _Node *  __p  )  [inline, protected, inherited]

deallocate a node

Definition at line 1378 of file vgtl_tree.h.

void _Tree_base< _Tp , _Ctr , _Iterator , _Alloc >::add_all_children ( _Output_Iterator  fi,
_Node *  _parent 
) [inline, inherited]

add all children to the parent _parent. fi is a iterator to the children container of the parent

void _Tree_base< _Tp , _Ctr , _Iterator , _Tree_node< _Tp, _Ctr, _Iterator > >::add_all_children ( _Output_Iterator  fi,
_Node *  _parent 
) [inline, inherited]

add all children to the parent _parent. fi is a iterator to the children container of the parent

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::begin (  )  const [inline]

return a const iterator to the first node in walk

Definition at line 1973 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::begin (  )  [inline]

return an iterator to the first node in walk

Definition at line 1964 of file vgtl_tree.h.

void _Tree_base< _Tp , _Ctr , _Iterator , _Tree_node< _Tp, _Ctr, _Iterator > >::clear_children (  )  [inline, inherited]

clear all children of the root node

Definition at line 1466 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
size_type __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::depth ( const recursive_walker __position  )  [inline]

return the depth of node __position in the tree

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1529 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
bool __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::empty (  )  const [inline]

is the tree empty?

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1392 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::end (  )  const [inline]

return a const iterator beyond the last node in walk

Definition at line 1977 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::end (  )  [inline]

return an iterator beyond the last node in walk

Definition at line 1968 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
void __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::erase ( const __walker_base __position  )  [inline]

erase the node at position __position.

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1444 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
bool __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::erase_child ( const __walker_base __position,
const container_iterator &  __It 
) [inline]

erase the (leaf) child __It of node __position. This works if and only if the child is a leaf.

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1495 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Node* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::erase_subtree ( const __walker_base __position,
const container_iterator &  __It 
) [inline]

erase the subtree position __position, whose top node is the child at children_iterator position __It, and return its top node.

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1511 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Node* __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::erase_tree ( const __walker_base __position  )  [inline]

erase the subtree starting at position __position, and return its top node.

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1471 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
allocator_type __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::get_allocator (  )  const [inline]

construct an allocator object

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1259 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_reference __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::getroot (  )  const [inline]

get a const reference to the virtual root node

Definition at line 1998 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
reference __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::getroot (  )  [inline]

get a reference to the virtual root node

Definition at line 1996 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::ground (  )  const [inline]

return a const walker to the virtual root node.

Definition at line 1943 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::ground (  )  [inline]

return a walker to the virtual root node.

Definition at line 1939 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
void __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::insert_child ( const __walker_base __position,
const container_insert_arg &  __It 
) [inline]

add a child below __position with default data, at the __It position in the __position - node's children container

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1415 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
void __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::insert_child ( const __walker_base __position,
const _Tp &  __x,
const container_insert_arg &  __It 
) [inline]

add a child below __position with data __x, at the __It position in the __position - node's children container

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1409 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
void __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::insert_children ( const __walker_base __position,
size_type  __n,
const _Tp &  __x,
const container_iterator &  __It 
) [inline]

add __n children below __position with data __x, after the __It position in the __position - node's children container

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1419 of file vgtl_graph.h.

void __Tree_t< _Tp , _Ctr , _Iterator , _Inserter , _Tree_node< _Tp, _Ctr, _Iterator > , _Alloc >::insert_subtree ( const __walker_base __position,
_Self __subtree,
const children_iterator __It 
) [inline, inherited]

add a complete subtree __subtree below position __position and children iterator position __It.

Definition at line 1702 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
size_type __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::max_size (  )  const [inline]

return the maximum possible size of the tree (theor. infinity)

Reimplemented from __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1400 of file vgtl_graph.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Self& __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::operator= ( _Node __x  )  [inline]

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
_Self& __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::operator= ( const _Self __x  ) 

standard assignment operator

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_reverse_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::rbegin (  )  const [inline]

return a const reverse iterator to the first node in walk

Definition at line 1989 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
reverse_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::rbegin (  )  [inline]

return a reverse iterator to the first node in walk

Definition at line 1982 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_reverse_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::rend (  )  const [inline]

return a const reverse iterator beyond the last node in walk

Definition at line 1992 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
reverse_iterator __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::rend (  )  [inline]

return a reverse iterator beyond the last node in walk

Definition at line 1985 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::root (  )  const [inline]

return a const walker to the first non-virtual tree root

Definition at line 1960 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::root (  )  [inline]

return a walker to the first non-virtual tree root

Definition at line 1957 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
const_walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::root ( children_iterator  __it  )  const [inline]

return a const walker to a root node.

Definition at line 1952 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
walker __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc >::root ( children_iterator  __it  )  [inline]

return a walker to a root node.

Definition at line 1947 of file vgtl_tree.h.

void __Tree_t< _Tp , _Ctr , _Iterator , _Inserter , _Tree_node< _Tp, _Ctr, _Iterator > , _Alloc >::swap ( _Self __x  )  [inline, inherited]

swap two trees

Definition at line 1663 of file vgtl_tree.h.


Friends And Related Function Documentation

template<class _Tp, class _Ctr, class _Iterator, class _Inserter, class _Alloc>
bool operator==__VGTL_NULL_TMPL_ARGS ( const __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc > &  __x,
const __Tree< _Tp, _Ctr, _Iterator, _Inserter, _Alloc > &  __y 
) [friend]

comparison operator


Member Data Documentation

_Node* _Tree_alloc_base< _Tp , _Ctr , _Iterator , _Node , _IsStatic >::_C_node [protected, inherited]

This is the node

Definition at line 1387 of file vgtl_tree.h.


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

Generated on Tue Feb 9 14:42:20 2010 for Vienna Graph Template Library by  doxygen 1.5.8