FreeLing  4.0
Public Member Functions | Friends
freeling::basic_nonconst_tree_iterator< T > Class Template Reference

nonconst iterator. More...

#include <tree.h>

Inheritance diagram for freeling::basic_nonconst_tree_iterator< T >:
Inheritance graph
[legend]
Collaboration diagram for freeling::basic_nonconst_tree_iterator< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 basic_nonconst_tree_iterator ()
 ~basic_nonconst_tree_iterator ()
T & operator* () const
 basic const iterator operations
T * operator-> () const
T * get_info () const
 emulate operator -> for java/python/perl APIS
tree_preorder_iterator< T > get_parent ()
 get iterator to parent node
tree_sibling_iterator< T > nth_child (unsigned int)
tree< T > & nth_child_ref (unsigned int)
tree_preorder_iterator< T > begin ()
 iterators begin/end
tree_preorder_iterator< T > end ()
tree_sibling_iterator< T > sibling_begin ()
tree_sibling_iterator< T > sibling_end ()
tree_sibling_iterator< T > sibling_rbegin ()
tree_sibling_iterator< T > sibling_rend ()
void add_child (const tree< T > &t, bool last=true)
 copy given tree and add it as a child
void hang_child (tree< T > &t, tree_sibling_iterator< T > where=tree_sibling_iterator< T >(NULL))
 add given tree and as a child reordering structure. NO COPIES MADE.
void hang_child (basic_nonconst_tree_iterator &p, tree_sibling_iterator< T > where=tree_sibling_iterator< T >(NULL))

Friends

class tree_preorder_iterator< T >
class tree_sibling_iterator< T >
class const_tree_preorder_iterator< T >
class const_tree_sibling_iterator< T >

Detailed Description

template<class T>
class freeling::basic_nonconst_tree_iterator< T >

nonconst iterator.

A const iterator X (preorder or sibling) plus non-const * and ->, plus access to nonconst operations of the underlying tree


Constructor & Destructor Documentation

---------------------------------------------------------------------------------- basic_nonconst_tree_iterator ---------------------------------------------------------


Member Function Documentation

template<class T >
void freeling::basic_nonconst_tree_iterator< T >::add_child ( const tree< T > &  t,
bool  last = true 
)

copy given tree and add it as a child

iterators begin/end

template<class T >
T * freeling::basic_nonconst_tree_iterator< T >::get_info ( ) const

emulate operator -> for java/python/perl APIS

Reimplemented from freeling::basic_tree_iterator< T, tree< T > >.

get iterator to parent node

template<class T >
void freeling::basic_nonconst_tree_iterator< T >::hang_child ( tree< T > &  t,
tree_sibling_iterator< T >  where = tree_sibling_iterator<T>(NULL) 
)

add given tree and as a child reordering structure. NO COPIES MADE.

template<class T >
tree_sibling_iterator< T > freeling::basic_nonconst_tree_iterator< T >::nth_child ( unsigned int  n)

---------------------------------------------------------------------------------- non-const tree operations accessed via the iterator ------------------------------------------

template<class T >
tree< T > & freeling::basic_nonconst_tree_iterator< T >::nth_child_ref ( unsigned int  n)
template<class T >
T & freeling::basic_nonconst_tree_iterator< T >::operator* ( ) const

basic const iterator operations

Reimplemented from freeling::basic_tree_iterator< T, tree< T > >.

template<class T >
T * freeling::basic_nonconst_tree_iterator< T >::operator-> ( ) const

Friends And Related Function Documentation

template<class T>
friend class const_tree_preorder_iterator< T > [friend]
template<class T>
friend class const_tree_sibling_iterator< T > [friend]
template<class T>
friend class tree_preorder_iterator< T > [friend]
template<class T>
friend class tree_sibling_iterator< T > [friend]

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