00001
00002
00003
00004
00005
00012 #ifndef _BMS_H
00013 #define _BMS_H
00014
00015 #include "unicode/utypes.h"
00016
00017 #if !UCONFIG_NO_COLLATION && !UCONFIG_NO_BREAK_ITERATION
00018
00019 #include "unicode/ucol.h"
00020
00035 typedef void UCD;
00036
00051 U_CAPI UCD * U_EXPORT2
00052 ucd_open(UCollator *coll, UErrorCode *status);
00053
00061 U_CAPI void U_EXPORT2
00062 ucd_close(UCD *ucd);
00063
00077 U_CAPI UCollator * U_EXPORT2
00078 ucd_getCollator(UCD *ucd);
00079
00092 U_CAPI void U_EXPORT2
00093 ucd_freeCache();
00094
00102 U_CAPI void U_EXPORT2
00103 ucd_flushCache();
00104
00182 struct BMS;
00183 typedef struct BMS BMS;
00203 U_CAPI BMS * U_EXPORT2
00204 bms_open(UCD *ucd,
00205 const UChar *pattern, int32_t patternLength,
00206 const UChar *target, int32_t targetLength,
00207 UErrorCode *status);
00208
00216 U_CAPI void U_EXPORT2
00217 bms_close(BMS *bms);
00218
00227 U_CAPI UBool U_EXPORT2
00228 bms_empty(BMS *bms);
00229
00241 U_CAPI UCD * U_EXPORT2
00242 bms_getData(BMS *bms);
00243
00256 U_CAPI UBool U_EXPORT2
00257 bms_search(BMS *bms, int32_t offset, int32_t *start, int32_t *end);
00258
00269 U_CAPI void U_EXPORT2
00270 bms_setTargetString(BMS *bms, const UChar *target, int32_t targetLength, UErrorCode *status);
00271
00272 #endif
00273
00274 #endif