#include <stdint.h>#include <stdbool.h>Go to the source code of this file.
Data Structures | |
| struct | CKTrie |
| struct | CKTrieNode |
Functions | |
| void | ck_trie_clear (CKTrie *trie) |
| CKTrie * | ck_trie_create (size_t max_nodes) |
| int32_t | ck_trie_find_longest (const CKTrie *trie, const char *text, size_t text_len, size_t start_pos, size_t *match_len) |
| void | ck_trie_free (CKTrie *trie) |
| bool | ck_trie_has_prefix (const CKTrie *trie, const char *text, size_t text_len, size_t pos) |
| int | ck_trie_insert (CKTrie *trie, const char *token, int32_t token_id, bool is_special, int32_t priority) |
| size_t | ck_trie_node_count (const CKTrie *trie) |
| void ck_trie_clear | ( | CKTrie * | trie | ) |
Definition at line 80 of file trie.c.
References CKTrieNode::children, CKTrie::node_count, CKTrie::root, and CKTrieNode::token_id.
Referenced by ck_tokenizer_reset().
| CKTrie* ck_trie_create | ( | size_t | max_nodes | ) |
Definition at line 29 of file trie.c.
References create_node(), DEFAULT_MAX_NODES, CKTrie::max_nodes, CKTrie::node_count, and CKTrie::root.
Referenced by ck_tokenizer_create().
| int32_t ck_trie_find_longest | ( | const CKTrie * | trie, |
| const char * | text, | ||
| size_t | text_len, | ||
| size_t | start_pos, | ||
| size_t * | match_len | ||
| ) |
Definition at line 142 of file trie.c.
References CKTrieNode::children, CKTrie::root, text, text_len, and CKTrieNode::token_id.
Referenced by find_longest_match_trie().
| void ck_trie_free | ( | CKTrie * | trie | ) |
Definition at line 51 of file trie.c.
References CKTrieNode::children, CKTrie::node_count, and CKTrie::root.
Referenced by ck_tokenizer_free().
| bool ck_trie_has_prefix | ( | const CKTrie * | trie, |
| const char * | text, | ||
| size_t | text_len, | ||
| size_t | pos | ||
| ) |
Definition at line 181 of file trie.c.
References CKTrieNode::children, CKTrie::root, text, and text_len.
| int ck_trie_insert | ( | CKTrie * | trie, |
| const char * | token, | ||
| int32_t | token_id, | ||
| bool | is_special, | ||
| int32_t | priority | ||
| ) |
Definition at line 110 of file trie.c.
References CKTrieNode::children, create_node(), CKTrieNode::is_special, CKTrie::max_nodes, CKTrie::node_count, CKTrieNode::priority, priority, CKTrie::root, token, and CKTrieNode::token_id.
Referenced by ck_tokenizer_add_special_token(), and ck_tokenizer_add_token().
| size_t ck_trie_node_count | ( | const CKTrie * | trie | ) |
Definition at line 195 of file trie.c.
References CKTrie::node_count.