X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;ds=sidebyside;f=include%2Fyaz%2Ficu_I18N.h;h=ef3c13d293895b730253448beb4dc5f4b4f9ccee;hb=2f577ad544711be46b63dd24fde4564d6e55d90d;hp=1983aeffd673924ffc482bcd207ed6e394304db4;hpb=362a3c56893f05cb1417cc23e24fc165303486dc;p=yaz-moved-to-github.git diff --git a/include/yaz/icu_I18N.h b/include/yaz/icu_I18N.h index 1983aef..ef3c13d 100644 --- a/include/yaz/icu_I18N.h +++ b/include/yaz/icu_I18N.h @@ -27,6 +27,9 @@ /** \file \brief Internal header for ICU utilities + + These functions, while non-static, are considered unstable and internal + and may be renamed for each YAZ release. */ #ifndef ICU_I18NL_H @@ -85,10 +88,6 @@ struct icu_buf_utf8 * icu_buf_utf8_resize(struct icu_buf_utf8 * buf8, void icu_buf_utf8_destroy(struct icu_buf_utf8 * buf8); -UErrorCode icu_utf16_from_utf8(struct icu_buf_utf16 * dest16, - struct icu_buf_utf8 * src8, - UErrorCode * status); - UErrorCode icu_utf16_from_utf8_cstr(struct icu_buf_utf16 * dest16, const char * src8cstr, UErrorCode * status); @@ -165,14 +164,13 @@ int32_t icu_tokenizer_token_count(struct icu_tokenizer * tokenizer); struct icu_transform { char action; - struct icu_buf_utf16 * rules16; UParseError parse_error; UTransliterator * trans; }; -struct icu_transform * icu_transform_create(const char *rules, char action, - UErrorCode *status); - +struct icu_transform * icu_transform_create(const char *id, char action, + const char *rules, + UErrorCode *status); void icu_transform_destroy(struct icu_transform * transform); @@ -186,7 +184,8 @@ enum icu_chain_step_type { ICU_chain_step_type_display, /* convert to utf8 display format */ ICU_chain_step_type_casemap, /* apply utf16 charmap */ ICU_chain_step_type_transform, /* apply utf16 transform */ - ICU_chain_step_type_tokenize /* apply utf16 tokenization */ + ICU_chain_step_type_tokenize, /* apply utf16 tokenization */ + ICU_chain_step_type_transliterate /* apply utf16 tokenization */ }; @@ -257,6 +256,11 @@ int icu_chain_token_number(yaz_icu_chain_t chain); const UCollator * icu_chain_get_coll(yaz_icu_chain_t chain); +yaz_icu_chain_t icu_chain_create(const char * locale, + int sort, + UErrorCode * status); + + #endif /* ICU_I18NL_H */ /*