Version 5.14.8
[yaz-moved-to-github.git] / include / yaz / icu_I18N.h
index c6b8672..c570384 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2010 Index Data.
+ * Copyright (C) Index Data.
  * All rights reserved.
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are met:
@@ -47,7 +47,7 @@
 
 /* declared structs and functions */
 
-int icu_check_status (UErrorCode status);
+int icu_check_status(UErrorCode status);
 
 struct icu_buf_utf16
 {
@@ -66,6 +66,11 @@ struct icu_buf_utf16 * icu_buf_utf16_resize(struct icu_buf_utf16 * buf16,
 struct icu_buf_utf16 *icu_buf_utf16_copy(struct icu_buf_utf16 * dest16,
                                          const struct icu_buf_utf16 * src16);
 
+struct icu_buf_utf16 *icu_buf_utf16_append(struct icu_buf_utf16 *dest16,
+                                           const struct icu_buf_utf16 * src16);
+
+void icu_buf_utf16_log(const char *lead, struct icu_buf_utf16 *src16);
+
 void icu_buf_utf16_destroy(struct icu_buf_utf16 * buf16);
 
 struct icu_buf_utf8;
@@ -100,41 +105,42 @@ UErrorCode icu_utf16_to_utf8(struct icu_buf_utf8 *dest8,
 
 struct icu_casemap;
 
-struct icu_casemap * icu_casemap_create(char action, UErrorCode *status);
+struct icu_casemap *icu_casemap_create(char action, UErrorCode *status);
 
 struct icu_casemap *icu_casemap_clone(struct icu_casemap *old);
 
-void icu_casemap_destroy(struct icu_casemap * casemap);
+void icu_casemap_destroy(struct icu_casemap *casemap);
 
-int icu_casemap_casemap(struct icu_casemap * casemap,
-                        struct icu_buf_utf16 * dest16,
-                        struct icu_buf_utf16 * src16,
+int icu_casemap_casemap(struct icu_casemap *casemap,
+                        struct icu_buf_utf16 *dest16,
+                        struct icu_buf_utf16 *src16,
                         UErrorCode *status,
                         const char *locale);
 
-int icu_utf16_casemap(struct icu_buf_utf16 * dest16,
-                      struct icu_buf_utf16 * src16,
+int icu_utf16_casemap(struct icu_buf_utf16 *dest16,
+                      struct icu_buf_utf16 *src16,
                       const char *locale, char action,
                       UErrorCode *status);
 
 void icu_sortkey8_from_utf16(UCollator *coll,
-                             struct icu_buf_utf8 * dest8, 
-                             struct icu_buf_utf16 * src16,
-                             UErrorCode * status);
+                             struct icu_buf_utf8 *dest8,
+                             struct icu_buf_utf16 *src16,
+                             UErrorCode *status);
 
 struct icu_tokenizer;
 struct icu_tokenizer * icu_tokenizer_create(const char *locale, char action,
                                             UErrorCode *status);
 
 struct icu_tokenizer *icu_tokenizer_clone(struct icu_tokenizer *old);
-void icu_tokenizer_destroy(struct icu_tokenizer * tokenizer);
+void icu_tokenizer_destroy(struct icu_tokenizer *tokenizer);
 
-int icu_tokenizer_attach(struct icu_tokenizer * tokenizer, 
-                         struct icu_buf_utf16 * src16, UErrorCode *status);
+int icu_tokenizer_attach(struct icu_tokenizer *tokenizer,
+                         struct icu_buf_utf16 *src16, UErrorCode *status);
 
-int32_t icu_tokenizer_next_token(struct icu_tokenizer * tokenizer, 
-                                 struct icu_buf_utf16 * tkn16, 
-                                 UErrorCode *status);
+int32_t icu_tokenizer_next_token(struct icu_tokenizer *tokenizer,
+                                 struct icu_buf_utf16 *tkn16,
+                                 UErrorCode *status,
+                                 size_t *start, size_t *len);
 
 int32_t icu_tokenizer_token_count(struct icu_tokenizer * tokenizer);
 
@@ -146,27 +152,17 @@ struct icu_transform * icu_transform_create(const char *id, char action,
 struct icu_transform *icu_transform_clone(struct icu_transform *old);
 void icu_transform_destroy(struct icu_transform * transform);
 
-int icu_transform_trans(struct icu_transform * transform,
-                        struct icu_buf_utf16 * dest16,
-                        const struct icu_buf_utf16 * src16,
+int icu_transform_trans(struct icu_transform *transform,
+                        struct icu_buf_utf16 *dest16,
+                        const struct icu_buf_utf16 *src16,
                         UErrorCode *status);
 
 struct icu_chain_step;
 
 int icu_chain_token_number(yaz_icu_chain_t chain);
 
-yaz_icu_chain_t icu_chain_create(const char * locale,
-                                 int sort,
-                                 UErrorCode * status);
-
-
-struct icu_iter;
-struct icu_iter *icu_iter_create(struct icu_chain *chain,
-                                 const char *src8cstr);
-void icu_iter_destroy(struct icu_iter *iter);
-int icu_iter_next(struct icu_iter *iter, struct icu_buf_utf8 *result);
-const char *icu_iter_get_sortkey(struct icu_iter *iter);
-const char *icu_iter_get_display(struct icu_iter *iter);
+yaz_icu_chain_t icu_chain_create(const char *locale,
+                                 int sort, UErrorCode *status);
 
 #endif /* ICU_I18NL_H */