For ICU, locale, is a char ptr rather than uint8_t ptr.
[yaz-moved-to-github.git] / include / yaz / icu_I18N.h
index 4e80ad1..0e43725 100644 (file)
@@ -41,9 +41,6 @@
 #include <unicode/utrans.h>
 
 
-// #define ICU_CHAIN_SORTKEY
-#undef ICU_CHAIN_SORTKEY
-
 /* declared structs and functions */
 
 int icu_check_status (UErrorCode status);
@@ -187,10 +184,6 @@ int icu_normalizer_normalize(struct icu_normalizer * normalizer,
 enum icu_chain_step_type {
     ICU_chain_step_type_none,
     ICU_chain_step_type_display,   /* convert to utf8 display format */
-#ifdef ICU_CHAIN_SORTKEY
-    ICU_chain_step_type_index,     /* convert to utf8 index format  */
-    ICU_chain_step_type_sortkey,   /* convert to utf8 sortkey format */
-#endif
     ICU_chain_step_type_casemap,   /* apply utf16 charmap */
     ICU_chain_step_type_normalize, /* apply utf16 normalization */
     ICU_chain_step_type_tokenize   /* apply utf16 tokenization */
@@ -232,6 +225,8 @@ struct icu_chain
     uint8_t locale[16];
     int sort;
 
+    const char * src8cstr;
+
     UCollator * coll;
     
     /* number of tokens returned so far */
@@ -249,14 +244,14 @@ struct icu_chain
     struct icu_chain_step * steps;
 };
 
-struct icu_chain * icu_chain_create(const uint8_t * locale,
+struct icu_chain * icu_chain_create(const char * locale,
                                     int sort,
                                     UErrorCode * status);
 
 void icu_chain_destroy(struct icu_chain * chain);
 
-struct icu_chain * icu_chain_xml_config(xmlNode *xml_node,
-                                        const uint8_t * locale,
+struct icu_chain * icu_chain_xml_config(const xmlNode *xml_node,
+                                        const char *locale,
                                         int sort,
                                         UErrorCode * status);
 
@@ -276,13 +271,13 @@ int icu_chain_assign_cstr(struct icu_chain * chain,
 int icu_chain_next_token(struct icu_chain * chain,
                          UErrorCode *status);
 
-int icu_chain_get_token_count(struct icu_chain * chain);
+int icu_chain_token_number(struct icu_chain * chain);
 
-const char * icu_chain_get_display(struct icu_chain * chain);
+const char * icu_chain_token_display(struct icu_chain * chain);
 
-const char * icu_chain_get_norm(struct icu_chain * chain);
+const char * icu_chain_token_norm(struct icu_chain * chain);
 
-const char * icu_chain_get_sort(struct icu_chain * chain);
+const char * icu_chain_token_sortkey(struct icu_chain * chain);
 
 const UCollator * icu_chain_get_coll(struct icu_chain * chain);