FreeLing
3.1
|
#include <tree.h>
Public Types | |
typedef class generic_iterator< T > | generic_iterator |
typedef class generic_const_iterator< T > | generic_const_iterator |
typedef class preorder_iterator< T > | preorder_iterator |
typedef class const_preorder_iterator< T > | const_preorder_iterator |
typedef class sibling_iterator< T > | sibling_iterator |
typedef class const_sibling_iterator< T > | const_sibling_iterator |
typedef preorder_iterator | iterator |
typedef const_preorder_iterator | const_iterator |
Public Member Functions | |
tree () | |
Method implementations for class tree. | |
tree (const T &) | |
constructor: one-node tree | |
tree (const tree< T > &) | |
copy constructor | |
tree (const typename tree< T >::preorder_iterator &) | |
constructor from an iterator | |
~tree () | |
destructor | |
tree< T > & | operator= (const tree< T > &) |
assignment | |
unsigned int | num_children () const |
number of children | |
sibling_iterator | nth_child (unsigned int) const |
access nth child | |
iterator | get_parent () const |
access parent | |
tree< T > & | nth_child_ref (unsigned int) const |
access nth child ref (useful for Java API) | |
T & | get_info () |
access info (useful for Java API) | |
void | append_child (const tree< T > &) |
append child to a tree | |
void | hang_child (tree< T > &, bool=true) |
hang a tree as last child of another (no copying!!) | |
void | clear () |
bool | empty () const |
detect empty tree | |
sibling_iterator | sibling_begin () |
begin/end sibling iterator | |
const_sibling_iterator | sibling_begin () const |
sibling_iterator | sibling_end () |
const_sibling_iterator | sibling_end () const |
sibling_iterator | sibling_rbegin () |
const_sibling_iterator | sibling_rbegin () const |
sibling_iterator | sibling_rend () |
const_sibling_iterator | sibling_rend () const |
preorder_iterator | begin () |
begin/end preorder iterator | |
const_preorder_iterator | begin () const |
preorder_iterator | end () |
const_preorder_iterator | end () const |
Public Attributes | |
T | info |
Private Member Functions | |
void | clone (const tree< T > &) |
clone an entire tree | |
Private Attributes | |
bool | isempty |
tree * | parent |
tree * | first |
tree * | last |
tree * | prev |
tree * | next |
Friends | |
class | preorder_iterator< T > |
class | const_preorder_iterator< T > |
class | sibling_iterator< T > |
class | const_sibling_iterator< T > |
typedef const_preorder_iterator freeling::tree< T >::const_iterator |
typedef class const_preorder_iterator< T > freeling::tree< T >::const_preorder_iterator |
typedef class const_sibling_iterator< T > freeling::tree< T >::const_sibling_iterator |
typedef class generic_const_iterator< T > freeling::tree< T >::generic_const_iterator |
typedef class generic_iterator< T > freeling::tree< T >::generic_iterator |
typedef preorder_iterator freeling::tree< T >::iterator |
typedef class preorder_iterator< T > freeling::tree< T >::preorder_iterator |
typedef class sibling_iterator< T > freeling::tree< T >::sibling_iterator |
freeling::tree< T >::tree | ( | ) |
freeling::tree< T >::tree | ( | const T & | x | ) |
constructor: one-node tree
References freeling::tree< T >::first, freeling::tree< T >::isempty, freeling::tree< T >::last, freeling::tree< T >::next, freeling::tree< T >::parent, and freeling::tree< T >::prev.
freeling::tree< T >::tree | ( | const tree< T > & | t | ) |
copy constructor
freeling::tree< T >::tree | ( | const typename tree< T >::preorder_iterator & | p | ) |
constructor from an iterator
freeling::tree< T >::~tree | ( | ) |
destructor
References freeling::tree< T >::next.
void freeling::tree< T >::append_child | ( | const tree< T > & | child | ) |
append child to a tree
References freeling::tree< T >::clone(), last, freeling::tree< T >::next, freeling::tree< T >::parent, and freeling::tree< T >::prev.
tree< T >::preorder_iterator freeling::tree< T >::begin | ( | ) |
begin/end preorder iterator
Referenced by freeling::dep_txala::analyze(), freeling::completer::applyRule(), freeling::completer::complete(), and freeling::depLabeler::label().
tree< T >::const_preorder_iterator freeling::tree< T >::begin | ( | ) | const |
void freeling::tree< T >::clear | ( | ) |
References last, freeling::tree< T >::next, next, and prev.
void freeling::tree< T >::clone | ( | const tree< T > & | t | ) | [private] |
clone an entire tree
References freeling::tree< T >::clone(), freeling::tree< T >::first, freeling::tree< T >::info, freeling::tree< T >::isempty, last, freeling::tree< T >::next, next, freeling::tree< T >::parent, freeling::tree< T >::prev, and prev.
Referenced by freeling::tree< T >::append_child(), and freeling::tree< T >::clone().
bool freeling::tree< T >::empty | ( | ) | const |
detect empty tree
tree< T >::preorder_iterator freeling::tree< T >::end | ( | ) |
tree< T >::const_preorder_iterator freeling::tree< T >::end | ( | ) | const |
T & freeling::tree< T >::get_info | ( | ) |
access info (useful for Java API)
tree< T >::iterator freeling::tree< T >::get_parent | ( | ) | const |
access parent
void freeling::tree< T >::hang_child | ( | tree< T > & | child, |
bool | last = true |
||
) |
hang a tree as last child of another (no copying!!)
References freeling::tree< T >::first, freeling::tree< T >::last, last, freeling::tree< T >::next, freeling::tree< T >::parent, and freeling::tree< T >::prev.
Referenced by freeling::completer::applyRule(), freeling::completer::complete(), and freeling::dep_txala::dependencies().
tree< T >::sibling_iterator freeling::tree< T >::nth_child | ( | unsigned int | n | ) | const |
access nth child
tree< T > & freeling::tree< T >::nth_child_ref | ( | unsigned int | n | ) | const |
access nth child ref (useful for Java API)
unsigned int freeling::tree< T >::num_children | ( | ) | const |
number of children
References freeling::tree< T >::next.
Referenced by freeling::completer::complete().
tree< T > & freeling::tree< T >::operator= | ( | const tree< T > & | t | ) |
assignment
tree< T >::sibling_iterator freeling::tree< T >::sibling_begin | ( | ) |
begin/end sibling iterator
Referenced by freeling::completer::complete().
tree< T >::const_sibling_iterator freeling::tree< T >::sibling_begin | ( | ) | const |
tree< T >::sibling_iterator freeling::tree< T >::sibling_end | ( | ) |
Referenced by freeling::completer::complete().
tree< T >::const_sibling_iterator freeling::tree< T >::sibling_end | ( | ) | const |
tree< T >::sibling_iterator freeling::tree< T >::sibling_rbegin | ( | ) |
References last.
tree< T >::const_sibling_iterator freeling::tree< T >::sibling_rbegin | ( | ) | const |
References last.
tree< T >::sibling_iterator freeling::tree< T >::sibling_rend | ( | ) |
tree< T >::const_sibling_iterator freeling::tree< T >::sibling_rend | ( | ) | const |
friend class const_preorder_iterator< T > [friend] |
friend class const_sibling_iterator< T > [friend] |
friend class preorder_iterator< T > [friend] |
friend class sibling_iterator< T > [friend] |
tree* freeling::tree< T >::first [private] |
Referenced by freeling::tree< T >::clone(), freeling::tree< T >::hang_child(), and freeling::tree< T >::tree().
T freeling::tree< T >::info |
bool freeling::tree< T >::isempty [private] |
Referenced by freeling::tree< T >::clone(), and freeling::tree< T >::tree().
tree * freeling::tree< T >::last [private] |
Referenced by freeling::tree< T >::hang_child(), and freeling::tree< T >::tree().
tree * freeling::tree< T >::next [private] |
tree* freeling::tree< T >::parent [private] |
tree* freeling::tree< T >::prev [private] |