Skip to content

Commit

Permalink
write pinyin_get_context and pinyin_get_pinyin_is_incomplete method
Browse files Browse the repository at this point in the history
  • Loading branch information
epico committed Dec 18, 2014
1 parent 5cfda4c commit 9926656
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/libpinyin.ver
Expand Up @@ -14,6 +14,7 @@ LIBPINYIN {
pinyin_set_options;
pinyin_alloc_instance;
pinyin_free_instance;
pinyin_get_context;
pinyin_guess_sentence;
pinyin_guess_sentence_with_prefix;
pinyin_guess_predicted_candidates;
Expand All @@ -38,6 +39,7 @@ LIBPINYIN {
pinyin_get_chewing_string;
pinyin_get_pinyin_string;
pinyin_get_pinyin_strings;
pinyin_get_pinyin_is_incomplete;
pinyin_token_get_phrase;
pinyin_token_get_n_pronunciation;
pinyin_token_get_nth_pronunciation;
Expand Down
12 changes: 12 additions & 0 deletions src/pinyin.cpp
Expand Up @@ -779,6 +779,9 @@ void pinyin_free_instance(pinyin_instance_t * instance){
delete instance;
}

pinyin_context_t * pinyin_get_context (pinyin_instance_t * instance){
return instance->m_context;
}

static bool pinyin_update_constraints(pinyin_instance_t * instance){
pinyin_context_t * & context = instance->m_context;
Expand Down Expand Up @@ -2036,6 +2039,15 @@ bool pinyin_get_pinyin_strings(pinyin_instance_t * instance,
return true;
}

bool pinyin_get_pinyin_is_incomplete(pinyin_instance_t * instance,
ChewingKey * key) {
if (CHEWING_ZERO_MIDDLE == key->m_middle &&
CHEWING_ZERO_FINAL == key->m_final)
return true;

return false;
}

bool pinyin_token_get_phrase(pinyin_instance_t * instance,
phrase_token_t token,
guint * len,
Expand Down
21 changes: 21 additions & 0 deletions src/pinyin.h
Expand Up @@ -210,6 +210,15 @@ pinyin_instance_t * pinyin_alloc_instance(pinyin_context_t * context);
*/
void pinyin_free_instance(pinyin_instance_t * instance);

/**
* pinyin_get_context:
* @instance: the pinyin instance.
* @returns: the pinyin context.
*
* Get the pinyin context from the pinyin instance.
*
*/
pinyin_context_t * pinyin_get_context (pinyin_instance_t * instance);

/**
* pinyin_guess_sentence:
Expand Down Expand Up @@ -511,6 +520,18 @@ bool pinyin_get_pinyin_strings(pinyin_instance_t * instance,
gchar ** shengmu,
gchar ** yunmu);

/**
* pinyin_get_pinyin_is_incomplete:
* @instance: the pinyin instance.
* @key: the pinyin key.
* @returns: whether the pinyin key is incomplete pinyin.
*
* Check whether the pinyin key is incomplete pinyin.
*
*/
bool pinyin_get_pinyin_is_incomplete(pinyin_instance_t * instance,
ChewingKey * key);

/**
* pinyin_token_get_phrase:
* @instance: the pinyin instance.
Expand Down

0 comments on commit 9926656

Please sign in to comment.