#include <sent/stddefs.h>
#include <sent/ptree.h>
Include dependency graph for ptree.c:
Go to the source code of this file.
Functions | |
int | testbit (char *str, int bitplace) |
int | where_the_bit_differ (char *str1, char *str2) |
static PATNODE * | new_node () |
PATNODE * | make_ptree (char **words, int *data, int wordsnum, int bitplace) |
void | disp_ptree (PATNODE *node, int level) |
static int | testbit_local (int bitplace) |
static int | ptree_search_data_r (PATNODE *node) |
int | ptree_search_data (char *str, PATNODE *node) |
PATNODE * | ptree_make_root_node (int data) |
static void | ptree_add_entry_at (char *str, int bitloc, int data, PATNODE **parentlink) |
void | ptree_add_entry (char *str, int data, char *matchstr, PATNODE **rootnode) |
void | free_ptree (PATNODE *node) |
Variables | |
static char * | tmp_str |
Local work area: current string we are searching for. | |
static int | maxbitplace |
Local work area: Maximum bit length of tmp_str. |
Definition in file ptree.c.
|
String bit test function.
Definition at line 36 of file ptree.c. Referenced by aptree_add_entry_at(), make_ptree(), ptree_add_entry_at(), and where_the_bit_differ(). |
|
Find in which bit the two strings differ, starting from the head.
Definition at line 61 of file ptree.c. Referenced by aptree_add_entry(), and ptree_add_entry(). |
|
Allocate a new node.
|
|
Make a patricia tree for given string arrays. Recursively called by descending the scan bit.
Definition at line 105 of file ptree.c. Referenced by make_ptree(), and ngram_make_lookup_tree(). |
|
Output a tree structure in text for debug, traversing pre-order
Definition at line 168 of file ptree.c. Referenced by disp_ptree(). |
|
Local bit test function for search.
|
|
Recursive function to search the data in the tree
Definition at line 224 of file ptree.c. Referenced by ptree_search_data(). |
|
Search for the data whose key string matches the given string.
Definition at line 246 of file ptree.c. Referenced by ngram_lookup_word(), and set_unigram(). |
|
Make a root node of a index tree.
Definition at line 268 of file ptree.c. Referenced by ptree_add_entry(), and set_unigram(). |
|
Insert a new node to the existing index tree.
Definition at line 286 of file ptree.c. Referenced by ptree_add_entry(). |
|
Insert a new node to the index tree.
Definition at line 326 of file ptree.c. Referenced by set_unigram(). |
|
Free all the sub nodes from specified node.
Definition at line 345 of file ptree.c. Referenced by free_ptree(), and ngram_info_free(). |