diff options
| author | Peng Wu <alexepico@gmail.com> | 2016-01-22 10:01:09 +0800 |
|---|---|---|
| committer | Peng Wu <alexepico@gmail.com> | 2016-01-22 10:01:09 +0800 |
| commit | aaf6de3afa7f1289c1d5a6adb115bfe5ad232c93 (patch) | |
| tree | 752d55310574138b4aed60954b7f4fe5aab3cc37 /src | |
| parent | a56ff04587ffbf134132716b40e63e42a2e25a7e (diff) | |
update phrase_large_table3.h
Diffstat (limited to 'src')
| -rw-r--r-- | src/storage/phrase_large_table3.cpp | 36 | ||||
| -rw-r--r-- | src/storage/phrase_large_table3.h | 38 |
2 files changed, 38 insertions, 36 deletions
diff --git a/src/storage/phrase_large_table3.cpp b/src/storage/phrase_large_table3.cpp index f03db32..1ab5c0a 100644 --- a/src/storage/phrase_large_table3.cpp +++ b/src/storage/phrase_large_table3.cpp @@ -23,42 +23,6 @@ namespace pinyin{ -/** - * Data Structure: - * m_chunk consists of table entry header and array of tokens. - */ - -class PhraseTableEntry{ - friend class PhraseLargeTable3; -protected: - MemoryChunk m_chunk; - -private: - /* Disallow used outside. */ - PhraseTableEntry() { - m_chunk.set_size(sizeof(table_entry_header_t)); - memset(m_chunk.begin(), 0, m_chunk.size()); - } - -protected: - table_entry_header_t get_header(); - - void set_header(table_entry_header_t header); - -public: - /* search method */ - int search(/* out */ PhraseTokens tokens) const; - - /* add_index/remove_index method */ - int add_index(/* in */ phrase_token_t token); - int remove_index(/* in */ phrase_token_t token); - - /* get length method */ - int get_length() const; - - /* mask out method */ - bool mask_out(phrase_token_t mask, phrase_token_t value); -}; /* load text method */ diff --git a/src/storage/phrase_large_table3.h b/src/storage/phrase_large_table3.h index 3022463..2a7d3fb 100644 --- a/src/storage/phrase_large_table3.h +++ b/src/storage/phrase_large_table3.h @@ -65,6 +65,44 @@ public: bool mask_out(phrase_token_t mask, phrase_token_t value); }; +/** + * Data Structure: + * m_chunk consists of table entry header and array of tokens. + */ + +class PhraseTableEntry{ + friend class PhraseLargeTable3; +protected: + MemoryChunk m_chunk; + +private: + /* Disallow used outside. */ + PhraseTableEntry() { + m_chunk.set_size(sizeof(table_entry_header_t)); + memset(m_chunk.begin(), 0, m_chunk.size()); + } + +protected: + table_entry_header_t get_header(); + + void set_header(table_entry_header_t header); + +public: + /* search method */ + int search(/* out */ PhraseTokens tokens) const; + + /* add_index/remove_index method */ + int add_index(/* in */ phrase_token_t token); + int remove_index(/* in */ phrase_token_t token); + + /* get length method */ + int get_length() const; + + /* mask out method */ + bool mask_out(phrase_token_t mask, phrase_token_t value); +}; + + static inline int reduce_tokens(const PhraseTokens tokens, TokenVector tokenarray) { int num = 0; |
