Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc > Class Template Reference
[Classes and types for external use]

-ary forest More...

#include <vgtl_tree.h>

Inheritance diagram for rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >:

Inheritance graph
[legend]
Collaboration diagram for rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef _Tp value_type
typedef _Tree_iterator< _Tp,
_Tp &, _Tp *, container_type,
container_iterator > 
iterator
typedef _Tree_iterator< _Tp,
_Tp &, _Tp *, container_type,
children_iterator, node_type
iterator
typedef _Tree_iterator< _Tp,
const _Tp &, const _Tp *,
container_type, container_iterator > 
const_iterator
typedef _Tree_iterator< _Tp,
const _Tp &, const _Tp *,
container_type, children_iterator,
node_type
const_iterator
typedef reverse_iterator<
const_iterator
const_reverse_iterator
typedef std::reverse_iterator<
const_iterator
const_reverse_iterator
typedef reverse_iterator<
iterator
reverse_iterator
typedef std::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 _SequenceCtr< void *,
_PtrAlloc >::iterator 
children_iterator
typedef _I children_iterator
typedef __one_iterator< void * > parents_iterator
typedef __one_iterator< void * > parents_iterator

Public Methods

void insert (const __walker_base &__position, const _Tp &__x)
void insert (const __walker_base &__position)
void push_child (const __walker_base &__position, const _Tp &__x)
void push_child (const __walker_base &__position)
void push_children (const __walker_base &__position, size_type __n, const _Tp &__x)
void push_children (const __walker_base &__position, size_type __n)
void unshift_child (const __walker_base &__position, const _Tp &__x)
void unshift_child (const __walker_base &__position)
void unshift_children (const __walker_base &__position, size_type __n, const _Tp &__x)
void unshift_children (const __walker_base &__position, size_type __n)
void push_subtree (const __walker_base &__position, _Self &__subtree)
void unshift_subtree (const __walker_base &__position, _Self &__subtree)
bool pop_child (const __walker_base &__position)
bool shift_child (const __walker_base &__position)
_Node * pop_subtree (const __walker_base &__position)
_Node * shift_subtree (const __walker_base &__position)
_Self & operator= (_Node *__x)
allocator_type get_allocator () const
walker root (children_iterator __it)
const_walker root (children_iterator __it) const
walker root ()
const_walker root () const
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
bool empty () const
size_type max_size () const
reference getroot ()
const_reference getroot () const
void swap (_Self &__x)
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 children_iterator &__It)
void insert_subtree (const __walker_base &__position, _Self &__subtree, const children_iterator &__It)
void erase (const __walker_base &__position)
_Node * erase_tree (const __walker_base &__position)
bool erase_child (const __walker_base &__position, const children_iterator &__It)
_Tree_node< _Tp, _SequenceCtr<
void *, _PtrAlloc >, _SequenceCtr<
void *, _PtrAlloc >::iterator > * 
erase_subtree (const __walker_base &__position, const children_iterator &__It)
size_type depth (const walker &__position)
walker ground ()
const_walker ground () const
void clear_children ()
void add_all_children (_Output_Iterator fi, _Node *_parent)
template<class _Output_Iterator> void add_all_children (_Output_Iterator fi, _Node *_parent)

Protected Methods

_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)

Protected Attributes

_Node * _C_node

Friends

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

Detailed Description

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
class rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >

This class constructs an -ary forest without data hooks. By default, the children are collected in a STL vector, but the container can be replaced by any other sequential container.

Definition at line 2508 of file vgtl_tree.h.


Member Typedef Documentation

template<class _Tp, class _Ctr, class _I, class _Alloc>
typedef _I _Tree_base< _Tp, _Ctr, _I, _Alloc >::children_iterator [inherited]
 

iterator for accessing the children

Reimplemented in __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Node, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _ITree_node< _Tp, _Ctr, _Iterator >, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >, __Tree_t< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator, _Key &, _Tree_node< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator, _Key &, _ITree_node< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator >, _Alloc >, and __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _ITree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1444 of file vgtl_tree.h.

typedef _SequenceCtr< void *, _PtrAlloc >::iterator __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >::children_iterator [inherited]
 

iterator for accessing the children

Reimplemented from _Tree_base< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1562 of file vgtl_tree.h.

typedef _Tree_iterator<_Tp,const _Tp&,const _Tp*,container_type,children_iterator,node_type> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::const_iterator [inherited]
 

the const iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1900 of file vgtl_tree.h.

typedef _Tree_iterator<_Tp,const _Tp&,const _Tp*,container_type,container_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::const_iterator [inherited]
 

the const iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1262 of file vgtl_graph.h.

typedef std::reverse_iterator<const_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::const_reverse_iterator [inherited]
 

the const reverse iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1904 of file vgtl_tree.h.

typedef reverse_iterator<const_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::const_reverse_iterator [inherited]
 

the const reverse iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1265 of file vgtl_graph.h.

typedef _Tree_walker<_Tp,const _Tp&,const _Tp*,container_type,container_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::const_walker [inherited]
 

the (recursive) const walker

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1277 of file vgtl_graph.h.

typedef _Tree_iterator<_Tp,_Tp&,_Tp*,container_type,children_iterator,node_type> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::iterator [inherited]
 

the iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1898 of file vgtl_tree.h.

typedef _Tree_iterator<_Tp,_Tp&,_Tp*,container_type,container_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::iterator [inherited]
 

the iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1261 of file vgtl_graph.h.

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

iterator for accessing the parents

Reimplemented in __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Node, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _ITree_node< _Tp, _Ctr, _Iterator >, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >, __Tree_t< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator, _Key &, _Tree_node< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator, _Key &, _ITree_node< _Key, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >, _AssocCtr< _Key &, pointer_adaptor< _Compare >, _PtrAlloc >::iterator >, _Alloc >, and __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _ITree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1446 of file vgtl_tree.h.

typedef __one_iterator<void *> __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >::parents_iterator [inherited]
 

iterator for accessing the parents

Reimplemented from _Tree_base< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1563 of file vgtl_tree.h.

typedef std::reverse_iterator<iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::reverse_iterator [inherited]
 

the reverse iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1906 of file vgtl_tree.h.

typedef reverse_iterator<iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::reverse_iterator [inherited]
 

the reverse iterator

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1266 of file vgtl_graph.h.

typedef _Tp __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::value_type [inherited]
 

standard typedef

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1247 of file vgtl_graph.h.

typedef _Tree_walker<_Tp,_Tp&,_Tp*,container_type,container_iterator> __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::walker [inherited]
 

the (recursive) walker

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1276 of file vgtl_graph.h.


Member Function Documentation

_Node* __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::_C_create_node   [inline, protected, inherited]
 

construct a new tree node containing default data

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1307 of file vgtl_graph.h.

_Node* __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::_C_create_node const _Tp &    __x [inline, protected, inherited]
 

construct a new tree node containing data __x

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1294 of file vgtl_graph.h.

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

allocate a new node

Definition at line 1374 of file vgtl_tree.h.

void _Tree_alloc_base< _Tp, _Ctr, _I, _Alloc, _IsStatic >::_C_put_node _Node *    __p [inline, protected, inherited]
 

deallocate a node

Definition at line 1377 of file vgtl_tree.h.

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

deallocate a node

Definition at line 1377 of file vgtl_tree.h.

template<class _Tp, class _Ctr, class _I, class _Alloc>
template<class _Output_Iterator>
void _Tree_base< _Tp, _Ctr, _I, _Alloc >::add_all_children _Output_Iterator    fi,
_Node *    _parent
[inherited]
 

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

void _Tree_base< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > >::add_all_children _Output_Iterator    fi,
_Node *    _parent
[inherited]
 

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

const_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::begin   const [inline, inherited]
 

return a const iterator to the first node in walk

Definition at line 1972 of file vgtl_tree.h.

iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::begin   [inline, inherited]
 

return an iterator to the first node in walk

Definition at line 1963 of file vgtl_tree.h.

void _Tree_base< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator > >::clear_children   [inline, inherited]
 

clear all children of the root node

Definition at line 1465 of file vgtl_tree.h.

size_type __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::depth const walker   __position [inline, inherited]
 

return the depth of node __position in the tree

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1525 of file vgtl_graph.h.

bool __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::empty   const [inline, inherited]
 

is the tree empty?

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1391 of file vgtl_graph.h.

const_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::end   const [inline, inherited]
 

return a const iterator beyond the last node in walk

Definition at line 1976 of file vgtl_tree.h.

iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::end   [inline, inherited]
 

return an iterator beyond the last node in walk

Definition at line 1967 of file vgtl_tree.h.

void __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::erase const __walker_base &    __position [inline, inherited]
 

erase the node at position __position.

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1443 of file vgtl_graph.h.

bool __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >::erase_child const __walker_base &    __position,
const children_iterator   __It
[inline, inherited]
 

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

Definition at line 1769 of file vgtl_tree.h.

_Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >* __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >::erase_subtree const __walker_base &    __position,
const children_iterator   __It
[inline, inherited]
 

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

Definition at line 1789 of file vgtl_tree.h.

_Node* __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::erase_tree const __walker_base &    __position [inline, inherited]
 

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

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1470 of file vgtl_graph.h.

allocator_type __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::get_allocator   const [inline, inherited]
 

construct an allocator object

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1258 of file vgtl_graph.h.

const_reference __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::getroot   const [inline, inherited]
 

get a const reference to the virtual root node

Definition at line 1997 of file vgtl_tree.h.

reference __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::getroot   [inline, inherited]
 

get a reference to the virtual root node

Definition at line 1995 of file vgtl_tree.h.

const_walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::ground   const [inline, inherited]
 

return a const walker to the virtual root node.

Definition at line 1942 of file vgtl_tree.h.

walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::ground   [inline, inherited]
 

return a walker to the virtual root node.

Definition at line 1938 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::insert const __walker_base &    __position [inline]
 

Insert a node with default data at position __position.

Definition at line 2550 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::insert const __walker_base &    __position,
const _Tp &    __x
[inline]
 

Insert a node with data __x at position __position.

Definition at line 2522 of file vgtl_tree.h.

void __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::insert_child const __walker_base &    __position,
const container_insert_arg &    __It
[inline, inherited]
 

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

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1414 of file vgtl_graph.h.

void __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::insert_child const __walker_base &    __position,
const _Tp &    __x,
const container_insert_arg &    __It
[inline, inherited]
 

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

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1408 of file vgtl_graph.h.

void __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >::insert_children const __walker_base &    __position,
size_type    __n,
const _Tp &    __x,
const children_iterator   __It
[inline, inherited]
 

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

Definition at line 1681 of file vgtl_tree.h.

void __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::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 1701 of file vgtl_tree.h.

size_type __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::max_size   const [inline, inherited]
 

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

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1399 of file vgtl_graph.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
_Self& rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::operator= _Node *    __x [inline]
 

assign a tree from one node -> make this node the root node. This is useful for making trees out of erased subtrees.

Reimplemented from __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >.

Definition at line 2677 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
bool rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::pop_child const __walker_base &    __position [inline]
 

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

Definition at line 2619 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
_Node* rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::pop_subtree const __walker_base &    __position [inline]
 

erase the subtree position __position, whose top node is the last child of the node, and return its top node.

Definition at line 2647 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::push_child const __walker_base &    __position [inline]
 

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

Definition at line 2560 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::push_child const __walker_base &    __position,
const _Tp &    __x
[inline]
 

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

Definition at line 2555 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::push_children const __walker_base &    __position,
size_type    __n
[inline]
 

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

Definition at line 2571 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::push_children const __walker_base &    __position,
size_type    __n,
const _Tp &    __x
[inline]
 

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

Definition at line 2565 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::push_subtree const __walker_base &    __position,
_Self &    __subtree
[inline]
 

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

Definition at line 2599 of file vgtl_tree.h.

const_reverse_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::rbegin   const [inline, inherited]
 

return a const reverse iterator to the first node in walk

Definition at line 1988 of file vgtl_tree.h.

reverse_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::rbegin   [inline, inherited]
 

return a reverse iterator to the first node in walk

Definition at line 1981 of file vgtl_tree.h.

const_reverse_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::rend   const [inline, inherited]
 

return a const reverse iterator beyond the last node in walk

Definition at line 1991 of file vgtl_tree.h.

reverse_iterator __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::rend   [inline, inherited]
 

return a reverse iterator beyond the last node in walk

Definition at line 1984 of file vgtl_tree.h.

const_walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::root   const [inline, inherited]
 

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

Definition at line 1959 of file vgtl_tree.h.

walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::root   [inline, inherited]
 

return a walker to the first non-virtual tree root

Definition at line 1956 of file vgtl_tree.h.

const_walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::root children_iterator    __it const [inline, inherited]
 

return a const walker to a root node.

Definition at line 1951 of file vgtl_tree.h.

walker __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::root children_iterator    __it [inline, inherited]
 

return a walker to a root node.

Definition at line 1946 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
bool rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::shift_child const __walker_base &    __position [inline]
 

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

Definition at line 2633 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
_Node* rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::shift_subtree const __walker_base &    __position [inline]
 

erase the subtree position __position, whose top node is the last child of the node, and return its top node.

Definition at line 2662 of file vgtl_tree.h.

void __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc >::swap _Self &    __x [inline, inherited]
 

swap two trees

Reimplemented from __Tree_t< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Tree_node< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >.

Definition at line 1404 of file vgtl_graph.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::unshift_child const __walker_base &    __position [inline]
 

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

Definition at line 2581 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::unshift_child const __walker_base &    __position,
const _Tp &    __x
[inline]
 

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

Definition at line 2576 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::unshift_children const __walker_base &    __position,
size_type    __n
[inline]
 

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

Definition at line 2592 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::unshift_children const __walker_base &    __position,
size_type    __n,
const _Tp &    __x
[inline]
 

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

Definition at line 2586 of file vgtl_tree.h.

template<class _Tp, template< class __Ty, class __AllocT > class _SequenceCtr = std::vector, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void rntree< _Tp, _SequenceCtr, _PtrAlloc, _Alloc >::unshift_subtree const __walker_base &    __position,
_Self &    __subtree
[inline]
 

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

Definition at line 2609 of file vgtl_tree.h.


Friends And Related Function Documentation

bool operator==__VGTL_NULL_TMPL_ARGS const __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc > &    __x,
const __Tree< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _Alloc > &    __y
[friend, inherited]
 

comparison operator


Member Data Documentation

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

This is the node

Definition at line 1386 of file vgtl_tree.h.


The documentation for this class was generated from the following file:
Generated on Tue Nov 4 01:41:49 2003 for Vienna Graph Template Library by doxygen1.2.18