ICU 54.1 54.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
unorm.h
Go to the documentation of this file.
1 /*
2 *******************************************************************************
3 * Copyright (c) 1996-2010, International Business Machines Corporation
4 * and others. All Rights Reserved.
5 *******************************************************************************
6 * File unorm.h
7 *
8 * Created by: Vladimir Weinstein 12052000
9 *
10 * Modification history :
11 *
12 * Date Name Description
13 * 02/01/01 synwee Added normalization quickcheck enum and method.
14 */
15 #ifndef UNORM_H
16 #define UNORM_H
17
18 #include "unicode/utypes.h"
19
20 #if !UCONFIG_NO_NORMALIZATION
21
22 #include "unicode/uiter.h"
23 #include "unicode/unorm2.h"
24
133 typedef enum {
135 UNORM_NONE = 1,
137 UNORM_NFD = 2,
139 UNORM_NFKD = 3,
141 UNORM_NFC = 4,
143 UNORM_DEFAULT = UNORM_NFC,
145 UNORM_NFKC =5,
147 UNORM_FCD = 6,
148
150 UNORM_MODE_COUNT
151 } UNormalizationMode;
152
160 enum {
167 UNORM_UNICODE_3_2=0x20
168 };
169
185 #define UNORM_COMPARE_NORM_OPTIONS_SHIFT 20
186
206 U_STABLE int32_t U_EXPORT2
207 unorm_normalize(const UChar *source, int32_t sourceLength,
208 UNormalizationMode mode, int32_t options,
209 UChar *result, int32_t resultLength,
210 UErrorCode *status);
211
232 U_STABLE UNormalizationCheckResult U_EXPORT2
233 unorm_quickCheck(const UChar *source, int32_t sourcelength,
234 UNormalizationMode mode,
235 UErrorCode *status);
236
253 U_STABLE UNormalizationCheckResult U_EXPORT2
254 unorm_quickCheckWithOptions(const UChar *src, int32_t srcLength,
255 UNormalizationMode mode, int32_t options,
256 UErrorCode *pErrorCode);
257
279 U_STABLE UBool U_EXPORT2
280 unorm_isNormalized(const UChar *src, int32_t srcLength,
281 UNormalizationMode mode,
282 UErrorCode *pErrorCode);
283
301 U_STABLE UBool U_EXPORT2
302 unorm_isNormalizedWithOptions(const UChar *src, int32_t srcLength,
303 UNormalizationMode mode, int32_t options,
304 UErrorCode *pErrorCode);
305
379 U_STABLE int32_t U_EXPORT2
380 unorm_next(UCharIterator *src,
381 UChar *dest, int32_t destCapacity,
382 UNormalizationMode mode, int32_t options,
383 UBool doNormalize, UBool *pNeededToNormalize,
384 UErrorCode *pErrorCode);
385
412 U_STABLE int32_t U_EXPORT2
413 unorm_previous(UCharIterator *src,
414 UChar *dest, int32_t destCapacity,
415 UNormalizationMode mode, int32_t options,
416 UBool doNormalize, UBool *pNeededToNormalize,
417 UErrorCode *pErrorCode);
418
456 U_STABLE int32_t U_EXPORT2
457 unorm_concatenate(const UChar *left, int32_t leftLength,
458 const UChar *right, int32_t rightLength,
459 UChar *dest, int32_t destCapacity,
460 UNormalizationMode mode, int32_t options,
461 UErrorCode *pErrorCode);
462
468 #define UNORM_INPUT_IS_FCD 0x20000
469
475 #define U_COMPARE_IGNORE_CASE 0x10000
476
477 #ifndef U_COMPARE_CODE_POINT_ORDER
478 /* see also unistr.h and ustring.h */
484 #define U_COMPARE_CODE_POINT_ORDER 0x8000
485 #endif
486
553 U_STABLE int32_t U_EXPORT2
554 unorm_compare(const UChar *s1, int32_t length1,
555 const UChar *s2, int32_t length2,
556 uint32_t options,
557 UErrorCode *pErrorCode);
558
559 #endif /* #if !UCONFIG_NO_NORMALIZATION */
560
561 #endif