ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc > Class Template Reference
[Classes and types for external use]

$n$-ary forest with labelled edges More...

#include <vgtl_tree.h>

Inheritance diagram for ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc >:

Inheritance graph
[legend]
Collaboration diagram for ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef _Tp value_type
typedef _Node node_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,
_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 pair_adaptor
< _AssocCtr< _Key, void
*, _Compare, _PtrAlloc >
::iterator
children_iterator
typedef _TI children_iterator
typedef __one_iterator< void * > parents_iterator
typedef __one_iterator< void * > parents_iterator

Public Member Functions

_Selfoperator= (_Node *__x)
void insert (const __walker_base &__position, const _Tp &__x, const _Key &__k)
void insert (const __walker_base &__position, const _Key &__k)
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)
_Nodeerase_tree (const __walker_base &__position)
bool erase_child (const __walker_base &__position, const children_iterator &__It)
_Tree_node< _Tp, _AssocCtr
< _Key, void *, _Compare,
_PtrAlloc >, pair_adaptor
< _AssocCtr< _Key, void
*, _Compare, _PtrAlloc >
::iterator > > * 
erase_subtree (const __walker_base &__position, const children_iterator &__It)
size_type depth (const recursive_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 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, template< class __Key, class __Ty, class __Compare, class __AllocT > class _AssocCtr = std::multimap, class _Key = string, class _Compare = less<_Key>, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
class ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc >

This class constructs an $n$-ary forest without data hooks and labelled edges. By default, the children are collected in a STL multimap, but the container can be replaced by any other associative map container.

Definition at line 2801 of file vgtl_tree.h.


Member Typedef Documentation

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

iterator for accessing the children

Reimplemented in __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Node, _Alloc >, __Tree_t< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _ITree_node< _Tp,_AssocCtr< _Key, void *, _Compare, _PtrAlloc >,pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::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< _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 >, __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< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _ITree_node< _Tp,_SequenceCtr< void *, _PtrAlloc >,_SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _Tree_node< _Tp,_AssocCtr< _Key, void *, _Compare, _PtrAlloc >,pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > >, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >, and __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _ITree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1445 of file vgtl_tree.h.

typedef pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > > , _Alloc >::children_iterator [inherited]

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

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

typedef const value_type* __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::const_pointer [inherited]

typedef const value_type& __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::const_reference [inherited]

typedef std::reverse_iterator<const_iterator> __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::const_reverse_iterator [inherited]

typedef reverse_iterator<const_iterator> __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::const_reverse_iterator [inherited]

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

typedef ptrdiff_t __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::difference_type [inherited]

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

typedef _Tree_iterator<_Tp ,_Tp &,_Tp *,container_type,container_iterator> __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::iterator [inherited]

typedef _Node __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::node_type [inherited]

typedef _Node __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::node_type [inherited]

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

iterator for accessing the parents

Reimplemented in __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Node, _Alloc >, __Tree_t< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _ITree_node< _Tp,_AssocCtr< _Key, void *, _Compare, _PtrAlloc >,pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::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< _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 >, __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< _Tp, _SequenceCtr< void *, _PtrAlloc >, _SequenceCtr< void *, _PtrAlloc >::iterator, _SequenceCtr< void *, _PtrAlloc >::iterator, _ITree_node< _Tp,_SequenceCtr< void *, _PtrAlloc >,_SequenceCtr< void *, _PtrAlloc >::iterator >, _Alloc >, __Tree_t< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _Tree_node< _Tp,_AssocCtr< _Key, void *, _Compare, _PtrAlloc >,pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > >, _Alloc >, __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _Tree_node< _Tp, _Ctr, _Iterator >, _Alloc >, and __Tree_t< _Tp, _Ctr, _Iterator, _Inserter, _ITree_node< _Tp, _Ctr, _Iterator >, _Alloc >.

Definition at line 1447 of file vgtl_tree.h.

typedef __one_iterator<void *> __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > > , _Alloc >::parents_iterator [inherited]

typedef value_type* __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::pointer [inherited]

typedef value_type& __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::reference [inherited]

typedef std::reverse_iterator<iterator> __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::reverse_iterator [inherited]

typedef reverse_iterator<iterator> __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::reverse_iterator [inherited]

typedef size_t __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::size_type [inherited]

typedef _Tp __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::value_type [inherited]

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


Member Function Documentation

_Node* __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::_C_create_node (  )  [inline, protected, inherited]

_Node* __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::_C_create_node ( const _Tp &  __x  )  [inline, protected, inherited]

_Node* _Tree_alloc_base< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Node , _IsStatic >::_C_get_node (  )  [inline, protected, inherited]

allocate a new node

Definition at line 1375 of file vgtl_tree.h.

void _Tree_alloc_base< _Tp , _Ctr , _TI , _Alloc , _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 , _TI , _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 , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::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 _Alloc>
template<class _Output_Iterator >
void _Tree_base< _Tp, _Ctr, _TI, _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 , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::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

const_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::begin (  )  const [inline, inherited]

return a const iterator to the first node in walk

Definition at line 1973 of file vgtl_tree.h.

iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::begin (  )  [inline, inherited]

return an iterator to the first node in walk

Definition at line 1964 of file vgtl_tree.h.

void _Tree_base< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > > >::clear_children (  )  [inline, inherited]

clear all children of the root node

Definition at line 1466 of file vgtl_tree.h.

size_type __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::depth ( const recursive_walker __position  )  [inline, inherited]

bool __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::empty (  )  const [inline, inherited]

const_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::end (  )  const [inline, inherited]

return a const iterator beyond the last node in walk

Definition at line 1977 of file vgtl_tree.h.

iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::end (  )  [inline, inherited]

return an iterator beyond the last node in walk

Definition at line 1968 of file vgtl_tree.h.

void __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::erase ( const __walker_base __position  )  [inline, inherited]

bool __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _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 1770 of file vgtl_tree.h.

_Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > > * __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _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 1790 of file vgtl_tree.h.

_Node* __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::erase_tree ( const __walker_base __position  )  [inline, inherited]

allocator_type __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::get_allocator (  )  const [inline, inherited]

const_reference __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::getroot (  )  const [inline, inherited]

get a const reference to the virtual root node

Definition at line 1998 of file vgtl_tree.h.

reference __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::getroot (  )  [inline, inherited]

get a reference to the virtual root node

Definition at line 1996 of file vgtl_tree.h.

const_walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::ground (  )  const [inline, inherited]

return a const walker to the virtual root node.

Definition at line 1943 of file vgtl_tree.h.

walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::ground (  )  [inline, inherited]

return a walker to the virtual root node.

Definition at line 1939 of file vgtl_tree.h.

template<class _Tp , template< class __Key, class __Ty, class __Compare, class __AllocT > class _AssocCtr = std::multimap, class _Key = string, class _Compare = less<_Key>, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc >::insert ( const __walker_base __position,
const _Key &  __k 
) [inline]

Insert a node with default data and key __k at position __position.

Definition at line 2849 of file vgtl_tree.h.

template<class _Tp , template< class __Key, class __Ty, class __Compare, class __AllocT > class _AssocCtr = std::multimap, class _Key = string, class _Compare = less<_Key>, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
void ratree< _Tp, _AssocCtr, _Key, _Compare, _PtrAlloc, _Alloc >::insert ( const __walker_base __position,
const _Tp &  __x,
const _Key &  __k 
) [inline]

Insert a node with data __x and key _k at position __position.

Definition at line 2823 of file vgtl_tree.h.

void __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::insert_child ( const __walker_base __position,
const container_insert_arg &  __It 
) [inline, inherited]

void __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::insert_child ( const __walker_base __position,
const _Tp &  __x,
const container_insert_arg &  __It 
) [inline, inherited]

void __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _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 1682 of file vgtl_tree.h.

void __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _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 1702 of file vgtl_tree.h.

size_type __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::max_size (  )  const [inline, inherited]

template<class _Tp , template< class __Key, class __Ty, class __Compare, class __AllocT > class _AssocCtr = std::multimap, class _Key = string, class _Compare = less<_Key>, class _PtrAlloc = __VGTL_DEFAULT_ALLOCATOR(void *), class _Alloc = __VGTL_DEFAULT_ALLOCATOR(_Tp)>
_Self& ratree< _Tp, _AssocCtr, _Key, _Compare, _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, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _Alloc >.

Definition at line 2814 of file vgtl_tree.h.

const_reverse_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::rbegin (  )  const [inline, inherited]

return a const reverse iterator to the first node in walk

Definition at line 1989 of file vgtl_tree.h.

reverse_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::rbegin (  )  [inline, inherited]

return a reverse iterator to the first node in walk

Definition at line 1982 of file vgtl_tree.h.

const_reverse_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::rend (  )  const [inline, inherited]

return a const reverse iterator beyond the last node in walk

Definition at line 1992 of file vgtl_tree.h.

reverse_iterator __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::rend (  )  [inline, inherited]

return a reverse iterator beyond the last node in walk

Definition at line 1985 of file vgtl_tree.h.

const_walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::root (  )  const [inline, inherited]

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

Definition at line 1960 of file vgtl_tree.h.

walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::root (  )  [inline, inherited]

return a walker to the first non-virtual tree root

Definition at line 1957 of file vgtl_tree.h.

const_walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::root ( children_iterator  __it  )  const [inline, inherited]

return a const walker to a root node.

Definition at line 1952 of file vgtl_tree.h.

walker __Tree< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Alloc >::root ( children_iterator  __it  )  [inline, inherited]

return a walker to a root node.

Definition at line 1947 of file vgtl_tree.h.

void __Tree_t< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > , _Key , _Tree_node< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator > > , _Alloc >::swap ( _Self __x  )  [inline, inherited]

swap two trees

Definition at line 1663 of file vgtl_tree.h.


Friends And Related Function Documentation

bool operator==__VGTL_NULL_TMPL_ARGS ( const __Tree< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _Alloc > &  __x,
const __Tree< _Tp, _AssocCtr< _Key, void *, _Compare, _PtrAlloc >, pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::iterator >, _Key, _Alloc > &  __y 
) [friend, inherited]

comparison operator


Member Data Documentation

_Node* _Tree_alloc_base< _Tp , _AssocCtr< _Key, void *, _Compare, _PtrAlloc > , pair_adaptor< _AssocCtr< _Key, void *, _Compare, _PtrAlloc >::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 file:

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