diff options
author | Peng Wu <alexepico@gmail.com> | 2011-11-08 11:16:38 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2011-11-08 11:16:38 +0800 |
commit | 3b030513e61763bd5dbf197517ed9be7bc070884 (patch) | |
tree | a81d2aea8757d1e4331600e1ec16235c5833c3cf /src/storage | |
parent | 8f879fc75272a6feb5f1892e7ad2d07b2a58c13c (diff) | |
download | libpinyin-3b030513e61763bd5dbf197517ed9be7bc070884.tar.gz libpinyin-3b030513e61763bd5dbf197517ed9be7bc070884.tar.xz libpinyin-3b030513e61763bd5dbf197517ed9be7bc070884.zip |
begin to write pinyin parser beta
Diffstat (limited to 'src/storage')
-rw-r--r-- | src/storage/pinyin_parser2.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/src/storage/pinyin_parser2.h b/src/storage/pinyin_parser2.h new file mode 100644 index 0000000..e2c09a8 --- /dev/null +++ b/src/storage/pinyin_parser2.h @@ -0,0 +1,60 @@ +/* + * libpinyin + * Library to deal with pinyin. + * + * Copyright (C) 2011 Peng Wu <alexepico@gmail.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef PINYIN_PARSER2_H +#define PINYIN_PARSER2_H + +#include "chewing_key.h" + +typedef struct { + const char * m_pinyin_str; + const char * m_chewing_str; + ChewingKey m_chewing_key; +} content_table_item_t; + +typedef struct { + const char * m_pinyin_input; + guint32 m_flags; + guint16 m_table_index; +} pinyin_index_item_t; + +typedef struct { + const char * m_chewing_input; + guint32 m_flags; + guint16 m_table_index; +} chewing_index_item_t; + +typedef struct { + ChewingKey m_orig_key; + ChewingKey m_first_key; + ChewingKey m_second_key; + guint32 m_freq; +} divided_table_item_t; + +typedef struct { + ChewingKey m_orig_first_key; + ChewingKey m_orig_second_key; + ChewingKey m_new_first_key; + ChewingKey m_new_second_key; + gfloat m_benefit; +} resplit_table_item_t; + +#endif |