diff options
author | Peng Wu <alexepico@gmail.com> | 2012-04-16 11:04:00 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2012-04-16 11:04:00 +0800 |
commit | 556a8bb43e42e25df8f8f0bcedfcb1d0a4704d49 (patch) | |
tree | dbe7409fa38072a75e04c53716d3e82dc9569abd /src/pinyin.h | |
parent | d02d2e469585da83b1b3e1ec3a4a38083c5b8c30 (diff) | |
download | libpinyin-556a8bb43e42e25df8f8f0bcedfcb1d0a4704d49.tar.gz libpinyin-556a8bb43e42e25df8f8f0bcedfcb1d0a4704d49.tar.xz libpinyin-556a8bb43e42e25df8f8f0bcedfcb1d0a4704d49.zip |
begin to write initial fuzzy pinyin support
Diffstat (limited to 'src/pinyin.h')
-rw-r--r-- | src/pinyin.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/pinyin.h b/src/pinyin.h index 50eaf6d..e8b751a 100644 --- a/src/pinyin.h +++ b/src/pinyin.h @@ -35,6 +35,22 @@ extern "C" { typedef struct _pinyin_context_t pinyin_context_t; typedef struct _pinyin_instance_t pinyin_instance_t; +typedef struct _lookup_candidate_t lookup_candidate_t; + +typedef GArray * CandidateVector; /* GArray of lookup_candidate_t */ + +enum lookup_candidate_type_t{ + NORMAL_CANDIDATE = 1, + DIVIDED_CANDIDATE, + RESPLIT_CANDIDATE +}; + +struct _lookup_candidate_t{ + enum lookup_candidate_type_t m_candidate_type; + phrase_token_t m_token; + ChewingKeyRest m_orig_rest; + gchar * m_new_pinyins; +}; struct _pinyin_instance_t{ pinyin_context_t * m_context; @@ -285,6 +301,10 @@ bool pinyin_get_candidates(pinyin_instance_t * instance, size_t offset, TokenVector candidates); +bool pinyin_get_candidates_v2(pinyin_instance_t * instance, + size_t offset, + CandidateVector candidates); + /** * pinyin_choose_candidate: * @instance: the pinyin instance. @@ -299,6 +319,10 @@ int pinyin_choose_candidate(pinyin_instance_t * instance, size_t offset, phrase_token_t token); +int pinyin_choose_candidate_v2(pinyin_instance_t * instance, + size_t offset, + lookup_candidate_t * candidate); + /** * pinyin_clear_constraint: * @instance: the pinyin instance. |