00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef UNORM_H
00016 #define UNORM_H
00017
00018 #include "unicode/utypes.h"
00019
00123 typedef enum {
00125 UNORM_NONE = 1,
00127 UNORM_NFD = 2,
00129 UNORM_NFKD = 3,
00131 UNORM_NFC = 4,
00133 UNORM_DEFAULT = UNORM_NFC,
00135 UNORM_NFKC =5,
00137 UNORM_FCD = 6,
00138
00140 UNORM_MODE_COUNT,
00141
00142
00143
00148 UCOL_NO_NORMALIZATION = 1,
00153 UCOL_DECOMP_CAN = 2,
00158 UCOL_DECOMP_COMPAT = 3,
00163 UCOL_DEFAULT_NORMALIZATION = UCOL_DECOMP_COMPAT,
00168 UCOL_DECOMP_CAN_COMP_COMPAT = 4,
00173 UCOL_DECOMP_COMPAT_COMP_CAN =5,
00174
00179 UCOL_IGNORE_HANGUL = 16,
00184 UNORM_IGNORE_HANGUL = 16
00185 } UNormalizationMode;
00186
00206 U_CAPI int32_t U_EXPORT2
00207 unorm_normalize(const UChar *source, int32_t sourceLength,
00208 UNormalizationMode mode, int32_t options,
00209 UChar *result, int32_t resultLength,
00210 UErrorCode *status);
00211
00217 #define u_normalize unorm_normalize
00218
00224 typedef enum UNormalizationCheckResult {
00228 UNORM_NO,
00232 UNORM_YES,
00237 UNORM_MAYBE
00238 } UNormalizationCheckResult;
00239
00258 U_CAPI UNormalizationCheckResult U_EXPORT2
00259 unorm_quickCheck(const UChar *source, int32_t sourcelength,
00260 UNormalizationMode mode,
00261 UErrorCode *status);
00262
00263 #endif