FreeLing  4.0
Public Member Functions | Private Member Functions | Private Attributes
freeling::chart Class Reference

Class chart contains an array of cells that constitute a chart. More...

#include <chart.h>

Collaboration diagram for freeling::chart:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 chart (const grammar &)
 constructor
 ~chart ()
 destructor
int get_size () const
 Get size of the table.
void load_sentence (const sentence &, int k=0)
 load sentece and init parsing (fill up first row of chart)
void parse ()
 Do the parsing.
parse_tree get_tree (int, int, const std::wstring &=L"") const
 navigate through the chart and obtain a parse tree.

Private Member Functions

bool better_edge (const edge &, const edge &) const
 compare two edges when extracting a tree
std::list< std::pair< int, int > > cover (int a, int b) const
 obtain a list of cells that cover the subtree under cell (a,b)
int index (int i, int j) const
 compute position of the cell inside the vector
bool can_extend (const std::wstring &, int, int) const
 find out whether the cell (i,j) has some inactive edge whose head is the given category
void find_all_rules (const edge &, cell &, int, int) const
 Complete edges in a cell (ce) after inserting a terminal or an inactive edge, using rules whose right part starts with the right token (which may be wildcarded)
bool check_match (const std::wstring &, const std::wstring &) const
 check match between a (possibly) wildcarded string and a literal.
void dump () const

Private Attributes

std::vector< cell > table
 chart table
int size
 dimension of the chart table (length of the sentece to parse)
const grammar & gram
 grammar to use

Detailed Description

Class chart contains an array of cells that constitute a chart.


Constructor & Destructor Documentation

constructor

destructor


Member Function Documentation

bool freeling::chart::better_edge ( const edge &  ,
const edge &   
) const [private]

compare two edges when extracting a tree

bool freeling::chart::can_extend ( const std::wstring &  ,
int  ,
int   
) const [private]

find out whether the cell (i,j) has some inactive edge whose head is the given category

bool freeling::chart::check_match ( const std::wstring &  ,
const std::wstring &   
) const [private]

check match between a (possibly) wildcarded string and a literal.

std::list<std::pair<int,int> > freeling::chart::cover ( int  a,
int  b 
) const [private]

obtain a list of cells that cover the subtree under cell (a,b)

void freeling::chart::dump ( ) const [private]
void freeling::chart::find_all_rules ( const edge &  ,
cell &  ,
int  ,
int   
) const [private]

Complete edges in a cell (ce) after inserting a terminal or an inactive edge, using rules whose right part starts with the right token (which may be wildcarded)

Get size of the table.

parse_tree freeling::chart::get_tree ( int  ,
int  ,
const std::wstring &  = L"" 
) const

navigate through the chart and obtain a parse tree.

int freeling::chart::index ( int  i,
int  j 
) const [private]

compute position of the cell inside the vector

void freeling::chart::load_sentence ( const sentence &  ,
int  k = 0 
)

load sentece and init parsing (fill up first row of chart)

Do the parsing.


Member Data Documentation

const grammar& freeling::chart::gram [private]

grammar to use

dimension of the chart table (length of the sentece to parse)

std::vector<cell> freeling::chart::table [private]

chart table


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