1b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/* 2b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru********************************************************************** 350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho* Copyright (C) 1997-2010, International Business Machines 4b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* Corporation and others. All Rights Reserved. 5b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru********************************************************************** 6b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 7b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* File UCHAR.H 8b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 9b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* Modification History: 10b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 11b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* Date Name Description 12b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 04/02/97 aliu Creation. 13b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 03/29/99 helena Updated for C APIs. 14b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 4/15/99 Madhu Updated for C Implementation and Javadoc 15b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 5/20/99 Madhu Added the function u_getVersion() 16b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 8/19/1999 srl Upgraded scripts to Unicode 3.0 17b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 8/27/1999 schererm UCharDirection constants: U_... 18b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 11/11/1999 weiv added u_isalnum(), cleaned comments 19b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru* 01/11/2000 helena Renamed u_getVersion to u_getUnicodeVersion(). 20b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru****************************************************************************** 21b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru*/ 22b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 23b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#ifndef UCHAR_H 24b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define UCHAR_H 25b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 26b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#include "unicode/utypes.h" 27b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 28b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_CDECL_BEGIN 29b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 30b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/*==========================================================================*/ 31b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/* Unicode version number */ 32b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/*==========================================================================*/ 33b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 34b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode version number, default for the current ICU version. 35b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The actual Unicode Character Database (UCD) data is stored in uprops.dat 36b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and may be generated from UCD files from a different Unicode version. 37b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Call u_getUnicodeVersion to get the actual Unicode version of the data. 38b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 39b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 40b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 41b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 4227f654740f2a26ad62a5c155af9199af9e69b889claireho#define U_UNICODE_VERSION "6.0" 43b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 44b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 45b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * \file 46b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * \brief C API: Unicode Properties 47b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 48b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This C API provides low-level access to the Unicode Character Database. 49b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to raw property values, some convenience functions calculate 50b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * derived properties, for example for Java-style programming. 51b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 52b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode assigns each code point (not just assigned character) values for 53b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * many properties. 54b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Most of them are simple boolean flags, or constants from a small enumerated list. 55b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For some properties, values are strings or other relatively more complex types. 56b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 57b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For more information see 58b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "About the Unicode Character Database" (http://www.unicode.org/ucd/) 59b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and the ICU User Guide chapter on Properties (http://icu-project.org/userguide/properties.html). 60b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 61b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Many functions are designed to match java.lang.Character functions. 62b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the individual function documentation, 63b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and see the JDK 1.4 java.lang.Character documentation 64b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * at http://java.sun.com/j2se/1.4/docs/api/java/lang/Character.html 65b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 66b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * There are also functions that provide easy migration from C/POSIX functions 67b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * like isblank(). Their use is generally discouraged because the C/POSIX 68b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * standards do not define their semantics beyond the ASCII range, which means 69b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * that different implementations exhibit very different behavior. 70b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Instead, Unicode properties should be used directly. 71b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 72b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * There are also only a few, broad C/POSIX character classes, and they tend 73b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to be used for conflicting purposes. For example, the "isalpha()" class 74b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * is sometimes used to determine word boundaries, while a more sophisticated 75b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * approach would at least distinguish initial letters from continuation 76b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * characters (the latter including combining marks). 77b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (In ICU, BreakIterator is the most sophisticated API for word boundaries.) 78b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Another example: There is no "istitle()" class for titlecase characters. 79b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 80b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * ICU 3.4 and later provides API access for all twelve C/POSIX character classes. 81b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * ICU implements them according to the Standard Recommendations in 82b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Annex C: Compatibility Properties of UTS #18 Unicode Regular Expressions 83b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (http://www.unicode.org/reports/tr18/#Compatibility_Properties). 84b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 85b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * API access for C/POSIX character classes is as follows: 86b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - alpha: u_isUAlphabetic(c) or u_hasBinaryProperty(c, UCHAR_ALPHABETIC) 87b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - lower: u_isULowercase(c) or u_hasBinaryProperty(c, UCHAR_LOWERCASE) 88b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - upper: u_isUUppercase(c) or u_hasBinaryProperty(c, UCHAR_UPPERCASE) 89b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - punct: u_ispunct(c) 90b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - digit: u_isdigit(c) or u_charType(c)==U_DECIMAL_DIGIT_NUMBER 91b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - xdigit: u_isxdigit(c) or u_hasBinaryProperty(c, UCHAR_POSIX_XDIGIT) 92b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - alnum: u_hasBinaryProperty(c, UCHAR_POSIX_ALNUM) 93b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - space: u_isUWhiteSpace(c) or u_hasBinaryProperty(c, UCHAR_WHITE_SPACE) 94b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - blank: u_isblank(c) or u_hasBinaryProperty(c, UCHAR_POSIX_BLANK) 95b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - cntrl: u_charType(c)==U_CONTROL_CHAR 96b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - graph: u_hasBinaryProperty(c, UCHAR_POSIX_GRAPH) 97b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - print: u_hasBinaryProperty(c, UCHAR_POSIX_PRINT) 98b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 99b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: Some of the u_isxyz() functions in uchar.h predate, and do not match, 100b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the Standard Recommendations in UTS #18. Instead, they match Java 101b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * functions according to their API documentation. 102b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 103b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * \htmlonly 104b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The C/POSIX character classes are also available in UnicodeSet patterns, 105b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * using patterns like [:graph:] or \p{graph}. 106b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * \endhtmlonly 107b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 108b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions. 109b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Comparison: 110b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - u_isUWhiteSpace=UCHAR_WHITE_SPACE: Unicode White_Space property; 111b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * most of general categories "Z" (separators) + most whitespace ISO controls 112b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (including no-break spaces, but excluding IS1..IS4 and ZWSP) 113b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - u_isWhitespace: Java isWhitespace; Z + whitespace ISO controls but excluding no-break spaces 114b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - u_isJavaSpaceChar: Java isSpaceChar; just Z (including no-break spaces) 115b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - u_isspace: Z + whitespace ISO controls (including no-break spaces) 116b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - u_isblank: "horizontal spaces" = TAB + Zs - ZWSP 117b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 118b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 119b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 120b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Constants. 121b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 122b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 123b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** The lowest Unicode code point value. Code points are non-negative. @stable ICU 2.0 */ 124b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define UCHAR_MIN_VALUE 0 125b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 126b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 127b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The highest Unicode code point value (scalar value) according to 128b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The Unicode Standard. This is a 21-bit value (20.1 bits, rounded up). 129b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For a single character, UChar32 is a simple type that can hold any code point value. 130b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 131b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UChar32 132b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 133b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 134b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define UCHAR_MAX_VALUE 0x10ffff 135b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 136b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 137b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get a single-bit bit set (a flag) from a bit number 0..31. 138b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 139b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 140b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_MASK(x) ((uint32_t)1<<(x)) 141b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 142b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/* 143b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * !! Note: Several comments in this file are machine-read by the 144b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * genpname tool. These comments describe the correspondence between 145b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * icu enum constants and UCD entities. Do not delete them. Update 146b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * these comments as needed. 147b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 148b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Any comment of the form "/ *[name]* /" (spaces added) is such 149b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * a comment. 150b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 151b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The U_JG_* and U_GC_*_MASK constants are matched by their symbolic 152b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * name, which must match PropertyValueAliases.txt. 153b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 154b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 155b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 156b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Selection constants for Unicode properties. 157b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * These constants are used in functions like u_hasBinaryProperty to select 158b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * one of the Unicode properties. 159b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 160b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The properties APIs are intended to reflect Unicode properties as defined 161b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 162b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For details about the properties see http://www.unicode.org/ucd/ . 163b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For names of Unicode properties see the UCD file PropertyAliases.txt. 164b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 165b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Important: If ICU is built with UCD files from Unicode versions below, e.g., 3.2, 166b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * then properties marked with "new in Unicode 3.2" are not or not fully available. 167b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check u_getUnicodeVersion to be sure. 168b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 169b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 170b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyValue 171b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 172b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 173b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 174b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UProperty { 175b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* See note !!. Comments of the form "Binary property Dash", 176b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru "Enumerated property Script", "Double property Numeric_Value", 177b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru and "String property Age" are read by genpname. */ 178b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 179b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* Note: Place UCHAR_ALPHABETIC before UCHAR_BINARY_START so that 180b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru debuggers display UCHAR_ALPHABETIC as the symbolic name for 0, 181b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru rather than UCHAR_BINARY_START. Likewise for other *_START 182b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru identifiers. */ 183b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 184b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Alphabetic. Same as u_isUAlphabetic, different from u_isalpha. 185b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Lu+Ll+Lt+Lm+Lo+Nl+Other_Alphabetic @stable ICU 2.1 */ 186b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_ALPHABETIC=0, 187b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** First constant for binary Unicode properties. @stable ICU 2.1 */ 188b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BINARY_START=UCHAR_ALPHABETIC, 189b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property ASCII_Hex_Digit. 0-9 A-F a-f @stable ICU 2.1 */ 190b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_ASCII_HEX_DIGIT=1, 191b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Bidi_Control. 192b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Format controls which have specific functions 193b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru in the Bidi Algorithm. @stable ICU 2.1 */ 194b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BIDI_CONTROL=2, 195b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Bidi_Mirrored. 196b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters that may change display in RTL text. 197b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as u_isMirrored. 198b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See Bidi Algorithm, UTR 9. @stable ICU 2.1 */ 199b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BIDI_MIRRORED=3, 200b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Dash. Variations of dashes. @stable ICU 2.1 */ 201b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DASH=4, 202b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Default_Ignorable_Code_Point (new in Unicode 3.2). 203b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ignorable in most processing. 204b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru <2060..206F, FFF0..FFFB, E0000..E0FFF>+Other_Default_Ignorable_Code_Point+(Cf+Cc+Cs-White_Space) @stable ICU 2.1 */ 205b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DEFAULT_IGNORABLE_CODE_POINT=5, 206b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Deprecated (new in Unicode 3.2). 207b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru The usage of deprecated characters is strongly discouraged. @stable ICU 2.1 */ 208b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DEPRECATED=6, 209b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Diacritic. Characters that linguistically modify 210b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru the meaning of another character to which they apply. @stable ICU 2.1 */ 211b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DIACRITIC=7, 212b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Extender. 213b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Extend the value or shape of a preceding alphabetic character, 214b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru e.g., length and iteration marks. @stable ICU 2.1 */ 215b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_EXTENDER=8, 216b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Full_Composition_Exclusion. 217b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru CompositionExclusions.txt+Singleton Decompositions+ 218b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Non-Starter Decompositions. @stable ICU 2.1 */ 219b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_FULL_COMPOSITION_EXCLUSION=9, 220b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Grapheme_Base (new in Unicode 3.2). 221b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of grapheme cluster boundaries. 222b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru [0..10FFFF]-Cc-Cf-Cs-Co-Cn-Zl-Zp-Grapheme_Link-Grapheme_Extend-CGJ @stable ICU 2.1 */ 223b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GRAPHEME_BASE=10, 224b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Grapheme_Extend (new in Unicode 3.2). 225b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of grapheme cluster boundaries. 226b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Me+Mn+Mc+Other_Grapheme_Extend-Grapheme_Link-CGJ @stable ICU 2.1 */ 227b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GRAPHEME_EXTEND=11, 228b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Grapheme_Link (new in Unicode 3.2). 229b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of grapheme cluster boundaries. @stable ICU 2.1 */ 230b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GRAPHEME_LINK=12, 231b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Hex_Digit. 232b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters commonly used for hexadecimal numbers. @stable ICU 2.1 */ 233b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_HEX_DIGIT=13, 234b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Hyphen. Dashes used to mark connections 235b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru between pieces of words, plus the Katakana middle dot. @stable ICU 2.1 */ 236b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_HYPHEN=14, 237b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property ID_Continue. 238b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters that can continue an identifier. 239b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru DerivedCoreProperties.txt also says "NOTE: Cf characters should be filtered out." 240b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ID_Start+Mn+Mc+Nd+Pc @stable ICU 2.1 */ 241b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_ID_CONTINUE=15, 242b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property ID_Start. 243b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters that can start an identifier. 244b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Lu+Ll+Lt+Lm+Lo+Nl @stable ICU 2.1 */ 245b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_ID_START=16, 246b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Ideographic. 247b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru CJKV ideographs. @stable ICU 2.1 */ 248b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_IDEOGRAPHIC=17, 249b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property IDS_Binary_Operator (new in Unicode 3.2). 250b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of 251b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ideographic Description Sequences. @stable ICU 2.1 */ 252b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_IDS_BINARY_OPERATOR=18, 253b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property IDS_Trinary_Operator (new in Unicode 3.2). 254b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of 255b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ideographic Description Sequences. @stable ICU 2.1 */ 256b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_IDS_TRINARY_OPERATOR=19, 257b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Join_Control. 258b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Format controls for cursive joining and ligation. @stable ICU 2.1 */ 259b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_JOIN_CONTROL=20, 260b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Logical_Order_Exception (new in Unicode 3.2). 261b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters that do not use logical order and 262b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru require special handling in most processing. @stable ICU 2.1 */ 263b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_LOGICAL_ORDER_EXCEPTION=21, 264b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Lowercase. Same as u_isULowercase, different from u_islower. 265b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ll+Other_Lowercase @stable ICU 2.1 */ 266b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_LOWERCASE=22, 267b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Math. Sm+Other_Math @stable ICU 2.1 */ 268b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_MATH=23, 269b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Noncharacter_Code_Point. 270b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Code points that are explicitly defined as illegal 271b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru for the encoding of characters. @stable ICU 2.1 */ 272b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NONCHARACTER_CODE_POINT=24, 273b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Quotation_Mark. @stable ICU 2.1 */ 274b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_QUOTATION_MARK=25, 275b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Radical (new in Unicode 3.2). 276b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of 277b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ideographic Description Sequences. @stable ICU 2.1 */ 278b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_RADICAL=26, 279b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Soft_Dotted (new in Unicode 3.2). 280b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Characters with a "soft dot", like i or j. 281b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru An accent placed on these characters causes 282b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru the dot to disappear. @stable ICU 2.1 */ 283b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SOFT_DOTTED=27, 284b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Terminal_Punctuation. 285b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Punctuation characters that generally mark 286b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru the end of textual units. @stable ICU 2.1 */ 287b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_TERMINAL_PUNCTUATION=28, 288b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Unified_Ideograph (new in Unicode 3.2). 289b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For programmatic determination of 290b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Ideographic Description Sequences. @stable ICU 2.1 */ 291b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_UNIFIED_IDEOGRAPH=29, 292b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Uppercase. Same as u_isUUppercase, different from u_isupper. 293b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Lu+Other_Uppercase @stable ICU 2.1 */ 294b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_UPPERCASE=30, 295b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property White_Space. 296b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as u_isUWhiteSpace, different from u_isspace and u_isWhitespace. 297b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Space characters+TAB+CR+LF-ZWSP-ZWNBSP @stable ICU 2.1 */ 298b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_WHITE_SPACE=31, 299b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property XID_Continue. 300b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ID_Continue modified to allow closure under 301b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru normalization forms NFKC and NFKD. @stable ICU 2.1 */ 302b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_XID_CONTINUE=32, 303b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property XID_Start. ID_Start modified to allow 304b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru closure under normalization forms NFKC and NFKD. @stable ICU 2.1 */ 305b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_XID_START=33, 306b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Case_Sensitive. Either the source of a case 307b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru mapping or _in_ the target of a case mapping. Not the same as 308b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru the general category Cased_Letter. @stable ICU 2.6 */ 309b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_CASE_SENSITIVE=34, 310b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property STerm (new in Unicode 4.0.1). 311b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Sentence Terminal. Used in UAX #29: Text Boundaries 312b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr29/) 313b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 314b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_S_TERM=35, 315b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Variation_Selector (new in Unicode 4.0.1). 316b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Indicates all those characters that qualify as Variation Selectors. 317b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru For details on the behavior of these characters, 318b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru see StandardizedVariants.html and 15.6 Variation Selectors. 319b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 320b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_VARIATION_SELECTOR=36, 321b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property NFD_Inert. 322b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for characters that are inert under NFD, 323b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru i.e., they do not interact with adjacent characters. 32450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho See the documentation for the Normalizer2 class and the 32550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho Normalizer2::isInert() method. 326b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 327b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFD_INERT=37, 328b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property NFKD_Inert. 329b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for characters that are inert under NFKD, 330b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru i.e., they do not interact with adjacent characters. 33150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho See the documentation for the Normalizer2 class and the 33250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho Normalizer2::isInert() method. 333b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 334b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFKD_INERT=38, 335b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property NFC_Inert. 336b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for characters that are inert under NFC, 337b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru i.e., they do not interact with adjacent characters. 33850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho See the documentation for the Normalizer2 class and the 33950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho Normalizer2::isInert() method. 340b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 341b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFC_INERT=39, 342b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property NFKC_Inert. 343b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for characters that are inert under NFKC, 344b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru i.e., they do not interact with adjacent characters. 34550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho See the documentation for the Normalizer2 class and the 34650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho Normalizer2::isInert() method. 347b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 348b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFKC_INERT=40, 349b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary Property Segment_Starter. 350b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for characters that are starters in terms of 351b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Unicode normalization and combining character sequences. 352b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru They have ccc=0 and do not occur in non-initial position of the 353b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru canonical decomposition of any character 35450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho (like a-umlaut in NFD and a Jamo T in an NFD(Hangul LVT)). 355b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU uses this property for segmenting a string for generating a set of 356b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru canonically equivalent strings, e.g. for canonical closure while 357b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru processing collation tailoring rules. 358b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.0 */ 359b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SEGMENT_STARTER=41, 360b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Pattern_Syntax (new in Unicode 4.1). 361b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See UAX #31 Identifier and Pattern Syntax 362b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr31/) 363b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 364b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_PATTERN_SYNTAX=42, 365b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property Pattern_White_Space (new in Unicode 4.1). 366b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See UAX #31 Identifier and Pattern Syntax 367b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr31/) 368b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 369b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_PATTERN_WHITE_SPACE=43, 370b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property alnum (a C/POSIX character class). 371b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Implemented according to the UTS #18 Annex C Standard Recommendation. 372b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See the uchar.h file documentation. 373b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 374b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_POSIX_ALNUM=44, 375b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property blank (a C/POSIX character class). 376b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Implemented according to the UTS #18 Annex C Standard Recommendation. 377b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See the uchar.h file documentation. 378b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 379b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_POSIX_BLANK=45, 380b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property graph (a C/POSIX character class). 381b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Implemented according to the UTS #18 Annex C Standard Recommendation. 382b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See the uchar.h file documentation. 383b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 384b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_POSIX_GRAPH=46, 385b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property print (a C/POSIX character class). 386b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Implemented according to the UTS #18 Annex C Standard Recommendation. 387b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See the uchar.h file documentation. 388b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 389b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_POSIX_PRINT=47, 390b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Binary property xdigit (a C/POSIX character class). 391b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Implemented according to the UTS #18 Annex C Standard Recommendation. 392b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See the uchar.h file documentation. 393b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 3.4 */ 394b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_POSIX_XDIGIT=48, 39527f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Cased. For Lowercase, Uppercase and Titlecase characters. @stable ICU 4.4 */ 39650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CASED=49, 39727f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Case_Ignorable. Used in context-sensitive case mappings. @stable ICU 4.4 */ 39850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CASE_IGNORABLE=50, 39927f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_Lowercased. @stable ICU 4.4 */ 40050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_LOWERCASED=51, 40127f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_Uppercased. @stable ICU 4.4 */ 40250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_UPPERCASED=52, 40327f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_Titlecased. @stable ICU 4.4 */ 40450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_TITLECASED=53, 40527f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_Casefolded. @stable ICU 4.4 */ 40650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_CASEFOLDED=54, 40727f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_Casemapped. @stable ICU 4.4 */ 40850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_CASEMAPPED=55, 40927f654740f2a26ad62a5c155af9199af9e69b889claireho /** Binary property Changes_When_NFKC_Casefolded. @stable ICU 4.4 */ 41050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_CHANGES_WHEN_NFKC_CASEFOLDED=56, 411b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One more than the last constant for binary Unicode properties. @stable ICU 2.1 */ 41250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UCHAR_BINARY_LIMIT=57, 413b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 414b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Bidi_Class. 415b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as u_charDirection, returns UCharDirection values. @stable ICU 2.2 */ 416b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BIDI_CLASS=0x1000, 417b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** First constant for enumerated/integer Unicode properties. @stable ICU 2.2 */ 418b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_INT_START=UCHAR_BIDI_CLASS, 419b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Block. 420b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as ublock_getCode, returns UBlockCode values. @stable ICU 2.2 */ 421b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BLOCK=0x1001, 422b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Canonical_Combining_Class. 423b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as u_getCombiningClass, returns 8-bit numeric values. @stable ICU 2.2 */ 424b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_CANONICAL_COMBINING_CLASS=0x1002, 425b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Decomposition_Type. 426b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UDecompositionType values. @stable ICU 2.2 */ 427b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DECOMPOSITION_TYPE=0x1003, 428b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property East_Asian_Width. 429b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru See http://www.unicode.org/reports/tr11/ 430b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UEastAsianWidth values. @stable ICU 2.2 */ 431b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_EAST_ASIAN_WIDTH=0x1004, 432b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property General_Category. 433b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as u_charType, returns UCharCategory values. @stable ICU 2.2 */ 434b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GENERAL_CATEGORY=0x1005, 435b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Joining_Group. 436b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UJoiningGroup values. @stable ICU 2.2 */ 437b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_JOINING_GROUP=0x1006, 438b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Joining_Type. 439b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UJoiningType values. @stable ICU 2.2 */ 440b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_JOINING_TYPE=0x1007, 441b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Line_Break. 442b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns ULineBreak values. @stable ICU 2.2 */ 443b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_LINE_BREAK=0x1008, 444b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Numeric_Type. 445b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UNumericType values. @stable ICU 2.2 */ 446b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NUMERIC_TYPE=0x1009, 447b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Script. 448b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Same as uscript_getScript, returns UScriptCode values. @stable ICU 2.2 */ 449b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SCRIPT=0x100A, 450b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Hangul_Syllable_Type, new in Unicode 4. 451b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UHangulSyllableType values. @stable ICU 2.6 */ 452b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_HANGUL_SYLLABLE_TYPE=0x100B, 453b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property NFD_Quick_Check. 454b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 455b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFD_QUICK_CHECK=0x100C, 456b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property NFKD_Quick_Check. 457b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 458b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFKD_QUICK_CHECK=0x100D, 459b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property NFC_Quick_Check. 460b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 461b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFC_QUICK_CHECK=0x100E, 462b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property NFKC_Quick_Check. 463b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 464b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NFKC_QUICK_CHECK=0x100F, 465b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Lead_Canonical_Combining_Class. 466b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for the ccc of the first code point 467b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru of the decomposition, or lccc(c)=ccc(NFD(c)[0]). 468b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Useful for checking for canonically ordered text; 469b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru see UNORM_FCD and http://www.unicode.org/notes/tn5/#FCD . 470b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns 8-bit numeric values like UCHAR_CANONICAL_COMBINING_CLASS. @stable ICU 3.0 */ 471b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_LEAD_CANONICAL_COMBINING_CLASS=0x1010, 472b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Trail_Canonical_Combining_Class. 473b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru ICU-specific property for the ccc of the last code point 474b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru of the decomposition, or tccc(c)=ccc(NFD(c)[last]). 475b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Useful for checking for canonically ordered text; 476b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru see UNORM_FCD and http://www.unicode.org/notes/tn5/#FCD . 477b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns 8-bit numeric values like UCHAR_CANONICAL_COMBINING_CLASS. @stable ICU 3.0 */ 478b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_TRAIL_CANONICAL_COMBINING_CLASS=0x1011, 479b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Grapheme_Cluster_Break (new in Unicode 4.1). 480b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Used in UAX #29: Text Boundaries 481b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr29/) 482b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UGraphemeClusterBreak values. @stable ICU 3.4 */ 483b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GRAPHEME_CLUSTER_BREAK=0x1012, 484b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Sentence_Break (new in Unicode 4.1). 485b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Used in UAX #29: Text Boundaries 486b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr29/) 487b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns USentenceBreak values. @stable ICU 3.4 */ 488b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SENTENCE_BREAK=0x1013, 489b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Enumerated property Word_Break (new in Unicode 4.1). 490b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Used in UAX #29: Text Boundaries 491b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (http://www.unicode.org/reports/tr29/) 492b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Returns UWordBreakValues values. @stable ICU 3.4 */ 493b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_WORD_BREAK=0x1014, 494b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One more than the last constant for enumerated/integer Unicode properties. @stable ICU 2.2 */ 495b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_INT_LIMIT=0x1015, 496b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 497b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Bitmask property General_Category_Mask. 498b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru This is the General_Category property returned as a bit mask. 499b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru When used in u_getIntPropertyValue(c), same as U_MASK(u_charType(c)), 500b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru returns bit masks for UCharCategory values where exactly one bit is set. 501b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru When used with u_getPropertyValueName() and u_getPropertyValueEnum(), 502b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru a multi-bit mask is used for sets of categories like "Letters". 503b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Mask values should be cast to uint32_t. 504b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru @stable ICU 2.4 */ 505b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_GENERAL_CATEGORY_MASK=0x2000, 506b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** First constant for bit-mask Unicode properties. @stable ICU 2.4 */ 507b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_MASK_START=UCHAR_GENERAL_CATEGORY_MASK, 508b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One more than the last constant for bit-mask Unicode properties. @stable ICU 2.4 */ 509b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_MASK_LIMIT=0x2001, 510b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 511b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Double property Numeric_Value. 512b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_getNumericValue. @stable ICU 2.4 */ 513b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NUMERIC_VALUE=0x3000, 514b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** First constant for double Unicode properties. @stable ICU 2.4 */ 515b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DOUBLE_START=UCHAR_NUMERIC_VALUE, 516b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One more than the last constant for double Unicode properties. @stable ICU 2.4 */ 517b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_DOUBLE_LIMIT=0x3001, 518b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 519b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Age. 520b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_charAge. @stable ICU 2.4 */ 521b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_AGE=0x4000, 522b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** First constant for string Unicode properties. @stable ICU 2.4 */ 523b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_STRING_START=UCHAR_AGE, 524b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Bidi_Mirroring_Glyph. 525b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_charMirror. @stable ICU 2.4 */ 526b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_BIDI_MIRRORING_GLYPH=0x4001, 527b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Case_Folding. 528b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_strFoldCase in ustring.h. @stable ICU 2.4 */ 529b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_CASE_FOLDING=0x4002, 530b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property ISO_Comment. 531b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_getISOComment. @stable ICU 2.4 */ 532b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_ISO_COMMENT=0x4003, 533b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Lowercase_Mapping. 534b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_strToLower in ustring.h. @stable ICU 2.4 */ 535b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_LOWERCASE_MAPPING=0x4004, 536b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Name. 537b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_charName. @stable ICU 2.4 */ 538b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_NAME=0x4005, 539b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Simple_Case_Folding. 540b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_foldCase. @stable ICU 2.4 */ 541b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SIMPLE_CASE_FOLDING=0x4006, 542b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Simple_Lowercase_Mapping. 543b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_tolower. @stable ICU 2.4 */ 544b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SIMPLE_LOWERCASE_MAPPING=0x4007, 545b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Simple_Titlecase_Mapping. 546b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_totitle. @stable ICU 2.4 */ 547b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SIMPLE_TITLECASE_MAPPING=0x4008, 548b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Simple_Uppercase_Mapping. 549b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_toupper. @stable ICU 2.4 */ 550b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_SIMPLE_UPPERCASE_MAPPING=0x4009, 551b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Titlecase_Mapping. 552b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_strToTitle in ustring.h. @stable ICU 2.4 */ 553b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_TITLECASE_MAPPING=0x400A, 554b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Unicode_1_Name. 555b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_charName. @stable ICU 2.4 */ 556b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_UNICODE_1_NAME=0x400B, 557b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** String property Uppercase_Mapping. 558b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru Corresponds to u_strToUpper in ustring.h. @stable ICU 2.4 */ 559b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_UPPERCASE_MAPPING=0x400C, 560b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One more than the last constant for string Unicode properties. @stable ICU 2.4 */ 561b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_STRING_LIMIT=0x400D, 562b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 56327f654740f2a26ad62a5c155af9199af9e69b889claireho /** Provisional property Script_Extensions (new in Unicode 6.0). 56427f654740f2a26ad62a5c155af9199af9e69b889claireho As a provisional property, it may be modified or removed 56527f654740f2a26ad62a5c155af9199af9e69b889claireho in future versions of the Unicode Standard, and thus in ICU. 56627f654740f2a26ad62a5c155af9199af9e69b889claireho Some characters are commonly used in multiple scripts. 56727f654740f2a26ad62a5c155af9199af9e69b889claireho For more information, see UAX #24: http://www.unicode.org/reports/tr24/. 56827f654740f2a26ad62a5c155af9199af9e69b889claireho Corresponds to uscript_hasScript and uscript_getScriptExtensions in uscript.h. 56927f654740f2a26ad62a5c155af9199af9e69b889claireho @draft ICU 4.6 */ 57027f654740f2a26ad62a5c155af9199af9e69b889claireho UCHAR_SCRIPT_EXTENSIONS=0x7000, 57127f654740f2a26ad62a5c155af9199af9e69b889claireho /** First constant for Unicode properties with unusual value types. @draft ICU 4.6 */ 57227f654740f2a26ad62a5c155af9199af9e69b889claireho UCHAR_OTHER_PROPERTY_START=UCHAR_SCRIPT_EXTENSIONS, 57327f654740f2a26ad62a5c155af9199af9e69b889claireho /** One more than the last constant for Unicode properties with unusual value types. 57427f654740f2a26ad62a5c155af9199af9e69b889claireho * @draft ICU 4.6 */ 57527f654740f2a26ad62a5c155af9199af9e69b889claireho UCHAR_OTHER_PROPERTY_LIMIT=0x7001, 57627f654740f2a26ad62a5c155af9199af9e69b889claireho 577b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Represents a nonexistent or invalid property or property value. @stable ICU 2.4 */ 578b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCHAR_INVALID_CODE = -1 579b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UProperty; 580b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 581b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 582b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Data for enumerated Unicode general category types. 583b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See http://www.unicode.org/Public/UNIDATA/UnicodeData.html . 584b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 585b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 586b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UCharCategory 587b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru{ 588b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** See note !!. Comments of the form "Cn" are read by genpname. */ 589b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 590b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Non-category for unassigned and non-character code points. @stable ICU 2.0 */ 591b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_UNASSIGNED = 0, 592b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Cn "Other, Not Assigned (no characters in [UnicodeData.txt] have this property)" (same as U_UNASSIGNED!) @stable ICU 2.0 */ 593b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GENERAL_OTHER_TYPES = 0, 594b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Lu @stable ICU 2.0 */ 595b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_UPPERCASE_LETTER = 1, 596b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Ll @stable ICU 2.0 */ 597b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LOWERCASE_LETTER = 2, 598b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Lt @stable ICU 2.0 */ 599b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_TITLECASE_LETTER = 3, 600b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Lm @stable ICU 2.0 */ 601b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_MODIFIER_LETTER = 4, 602b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Lo @stable ICU 2.0 */ 603b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_OTHER_LETTER = 5, 604b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Mn @stable ICU 2.0 */ 605b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NON_SPACING_MARK = 6, 606b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Me @stable ICU 2.0 */ 607b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_ENCLOSING_MARK = 7, 608b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Mc @stable ICU 2.0 */ 609b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_COMBINING_SPACING_MARK = 8, 610b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Nd @stable ICU 2.0 */ 611b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DECIMAL_DIGIT_NUMBER = 9, 612b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Nl @stable ICU 2.0 */ 613b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LETTER_NUMBER = 10, 614b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** No @stable ICU 2.0 */ 615b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_OTHER_NUMBER = 11, 616b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Zs @stable ICU 2.0 */ 617b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SPACE_SEPARATOR = 12, 618b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Zl @stable ICU 2.0 */ 619b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LINE_SEPARATOR = 13, 620b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Zp @stable ICU 2.0 */ 621b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_PARAGRAPH_SEPARATOR = 14, 622b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Cc @stable ICU 2.0 */ 623b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CONTROL_CHAR = 15, 624b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Cf @stable ICU 2.0 */ 625b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_FORMAT_CHAR = 16, 626b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Co @stable ICU 2.0 */ 627b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_PRIVATE_USE_CHAR = 17, 628b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Cs @stable ICU 2.0 */ 629b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SURROGATE = 18, 630b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Pd @stable ICU 2.0 */ 631b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DASH_PUNCTUATION = 19, 632b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Ps @stable ICU 2.0 */ 633b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_START_PUNCTUATION = 20, 634b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Pe @stable ICU 2.0 */ 635b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_END_PUNCTUATION = 21, 636b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Pc @stable ICU 2.0 */ 637b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CONNECTOR_PUNCTUATION = 22, 638b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Po @stable ICU 2.0 */ 639b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_OTHER_PUNCTUATION = 23, 640b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Sm @stable ICU 2.0 */ 641b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_MATH_SYMBOL = 24, 642b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Sc @stable ICU 2.0 */ 643b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CURRENCY_SYMBOL = 25, 644b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Sk @stable ICU 2.0 */ 645b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_MODIFIER_SYMBOL = 26, 646b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** So @stable ICU 2.0 */ 647b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_OTHER_SYMBOL = 27, 648b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Pi @stable ICU 2.0 */ 649b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_INITIAL_PUNCTUATION = 28, 650b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Pf @stable ICU 2.0 */ 651b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_FINAL_PUNCTUATION = 29, 652b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** One higher than the last enum UCharCategory constant. @stable ICU 2.0 */ 653b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CHAR_CATEGORY_COUNT 654b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UCharCategory; 655b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 656b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 657b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_GC_XX_MASK constants are bit flags corresponding to Unicode 658b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * general category values. 659b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For each category, the nth bit is set if the numeric value of the 660b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * corresponding UCharCategory constant is n. 661b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 662b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * There are also some U_GC_Y_MASK constants for groups of general categories 663b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * like L for all letter categories. 664b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 665b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charType 666b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see U_GET_GC_MASK 667b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharCategory 668b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 669b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 670b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_CN_MASK U_MASK(U_GENERAL_OTHER_TYPES) 671b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 672b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 673b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LU_MASK U_MASK(U_UPPERCASE_LETTER) 674b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 675b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LL_MASK U_MASK(U_LOWERCASE_LETTER) 676b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 677b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LT_MASK U_MASK(U_TITLECASE_LETTER) 678b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 679b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LM_MASK U_MASK(U_MODIFIER_LETTER) 680b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 681b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LO_MASK U_MASK(U_OTHER_LETTER) 682b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 683b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 684b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_MN_MASK U_MASK(U_NON_SPACING_MARK) 685b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 686b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_ME_MASK U_MASK(U_ENCLOSING_MARK) 687b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 688b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_MC_MASK U_MASK(U_COMBINING_SPACING_MARK) 689b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 690b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 691b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_ND_MASK U_MASK(U_DECIMAL_DIGIT_NUMBER) 692b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 693b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_NL_MASK U_MASK(U_LETTER_NUMBER) 694b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 695b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_NO_MASK U_MASK(U_OTHER_NUMBER) 696b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 697b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 698b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_ZS_MASK U_MASK(U_SPACE_SEPARATOR) 699b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 700b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_ZL_MASK U_MASK(U_LINE_SEPARATOR) 701b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 702b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_ZP_MASK U_MASK(U_PARAGRAPH_SEPARATOR) 703b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 704b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 705b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_CC_MASK U_MASK(U_CONTROL_CHAR) 706b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 707b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_CF_MASK U_MASK(U_FORMAT_CHAR) 708b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 709b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_CO_MASK U_MASK(U_PRIVATE_USE_CHAR) 710b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 711b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_CS_MASK U_MASK(U_SURROGATE) 712b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 713b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 714b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PD_MASK U_MASK(U_DASH_PUNCTUATION) 715b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 716b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PS_MASK U_MASK(U_START_PUNCTUATION) 717b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 718b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PE_MASK U_MASK(U_END_PUNCTUATION) 719b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 720b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PC_MASK U_MASK(U_CONNECTOR_PUNCTUATION) 721b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 722b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PO_MASK U_MASK(U_OTHER_PUNCTUATION) 723b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 724b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 725b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_SM_MASK U_MASK(U_MATH_SYMBOL) 726b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 727b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_SC_MASK U_MASK(U_CURRENCY_SYMBOL) 728b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 729b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_SK_MASK U_MASK(U_MODIFIER_SYMBOL) 730b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 731b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_SO_MASK U_MASK(U_OTHER_SYMBOL) 732b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 733b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 734b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PI_MASK U_MASK(U_INITIAL_PUNCTUATION) 735b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 736b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_PF_MASK U_MASK(U_FINAL_PUNCTUATION) 737b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 738b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 739b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (L Letters). @stable ICU 2.1 */ 740b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_L_MASK \ 741b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK|U_GC_LM_MASK|U_GC_LO_MASK) 742b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 743b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (LC Cased Letters). @stable ICU 2.1 */ 744b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_LC_MASK \ 745b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK) 746b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 747b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (M Marks). @stable ICU 2.1 */ 748b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_M_MASK (U_GC_MN_MASK|U_GC_ME_MASK|U_GC_MC_MASK) 749b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 750b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (N Numbers). @stable ICU 2.1 */ 751b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_N_MASK (U_GC_ND_MASK|U_GC_NL_MASK|U_GC_NO_MASK) 752b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 753b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (Z Separators). @stable ICU 2.1 */ 754b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_Z_MASK (U_GC_ZS_MASK|U_GC_ZL_MASK|U_GC_ZP_MASK) 755b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 756b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (C Others). @stable ICU 2.1 */ 757b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_C_MASK \ 758b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (U_GC_CN_MASK|U_GC_CC_MASK|U_GC_CF_MASK|U_GC_CO_MASK|U_GC_CS_MASK) 759b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 760b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (P Punctuation). @stable ICU 2.1 */ 761b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_P_MASK \ 762b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru (U_GC_PD_MASK|U_GC_PS_MASK|U_GC_PE_MASK|U_GC_PC_MASK|U_GC_PO_MASK| \ 763b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GC_PI_MASK|U_GC_PF_MASK) 764b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 765b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Mask constant for multiple UCharCategory bits (S Symbols). @stable ICU 2.1 */ 766b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GC_S_MASK (U_GC_SM_MASK|U_GC_SC_MASK|U_GC_SK_MASK|U_GC_SO_MASK) 767b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 768b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 769b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This specifies the language directional property of a character set. 770b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 771b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 772b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UCharDirection { 773b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** See note !!. Comments of the form "EN" are read by genpname. */ 774b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 775b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** L @stable ICU 2.0 */ 776b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LEFT_TO_RIGHT = 0, 777b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** R @stable ICU 2.0 */ 778b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_RIGHT_TO_LEFT = 1, 779b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** EN @stable ICU 2.0 */ 780b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EUROPEAN_NUMBER = 2, 781b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** ES @stable ICU 2.0 */ 782b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EUROPEAN_NUMBER_SEPARATOR = 3, 783b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** ET @stable ICU 2.0 */ 784b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EUROPEAN_NUMBER_TERMINATOR = 4, 785b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** AN @stable ICU 2.0 */ 786b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_ARABIC_NUMBER = 5, 787b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** CS @stable ICU 2.0 */ 788b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_COMMON_NUMBER_SEPARATOR = 6, 789b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** B @stable ICU 2.0 */ 790b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_BLOCK_SEPARATOR = 7, 791b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** S @stable ICU 2.0 */ 792b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SEGMENT_SEPARATOR = 8, 793b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** WS @stable ICU 2.0 */ 794b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WHITE_SPACE_NEUTRAL = 9, 795b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** ON @stable ICU 2.0 */ 796b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_OTHER_NEUTRAL = 10, 797b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** LRE @stable ICU 2.0 */ 798b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LEFT_TO_RIGHT_EMBEDDING = 11, 799b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** LRO @stable ICU 2.0 */ 800b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LEFT_TO_RIGHT_OVERRIDE = 12, 801b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** AL @stable ICU 2.0 */ 802b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_RIGHT_TO_LEFT_ARABIC = 13, 803b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** RLE @stable ICU 2.0 */ 804b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_RIGHT_TO_LEFT_EMBEDDING = 14, 805b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** RLO @stable ICU 2.0 */ 806b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_RIGHT_TO_LEFT_OVERRIDE = 15, 807b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** PDF @stable ICU 2.0 */ 808b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_POP_DIRECTIONAL_FORMAT = 16, 809b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** NSM @stable ICU 2.0 */ 810b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DIR_NON_SPACING_MARK = 17, 811b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** BN @stable ICU 2.0 */ 812b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_BOUNDARY_NEUTRAL = 18, 813b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 814b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CHAR_DIRECTION_COUNT 815b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UCharDirection; 816b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 817b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 818b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Constants for Unicode blocks, see the Unicode Data file Blocks.txt 819b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 820b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 821b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruenum UBlockCode { 822b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 823b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** New No_Block value in Unicode 4. @stable ICU 2.6 */ 824b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_NO_BLOCK = 0, /*[none]*/ /* Special range indicating No_Block */ 825b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 826b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 827b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BASIC_LATIN = 1, /*[0000]*/ /*See note !!*/ 828b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 829b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 830b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_1_SUPPLEMENT=2, /*[0080]*/ 831b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 832b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 833b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_EXTENDED_A =3, /*[0100]*/ 834b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 835b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 836b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_EXTENDED_B =4, /*[0180]*/ 837b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 838b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 839b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_IPA_EXTENSIONS =5, /*[0250]*/ 840b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 841b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 842b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SPACING_MODIFIER_LETTERS =6, /*[02B0]*/ 843b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 844b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 845b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COMBINING_DIACRITICAL_MARKS =7, /*[0300]*/ 846b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 847b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** 848b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 3.2 renames this block to "Greek and Coptic". 849b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 850b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 851b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GREEK =8, /*[0370]*/ 852b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 853b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 854b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CYRILLIC =9, /*[0400]*/ 855b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 856b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 857b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARMENIAN =10, /*[0530]*/ 858b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 859b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 860b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HEBREW =11, /*[0590]*/ 861b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 862b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 863b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARABIC =12, /*[0600]*/ 864b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 865b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 866b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SYRIAC =13, /*[0700]*/ 867b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 868b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 869b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_THAANA =14, /*[0780]*/ 870b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 871b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 872b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_DEVANAGARI =15, /*[0900]*/ 873b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 874b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 875b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BENGALI =16, /*[0980]*/ 876b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 877b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 878b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GURMUKHI =17, /*[0A00]*/ 879b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 880b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 881b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GUJARATI =18, /*[0A80]*/ 882b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 883b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 884b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ORIYA =19, /*[0B00]*/ 885b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 886b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 887b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAMIL =20, /*[0B80]*/ 888b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 889b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 890b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TELUGU =21, /*[0C00]*/ 891b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 892b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 893b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KANNADA =22, /*[0C80]*/ 894b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 895b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 896b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MALAYALAM =23, /*[0D00]*/ 897b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 898b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 899b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SINHALA =24, /*[0D80]*/ 900b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 901b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 902b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_THAI =25, /*[0E00]*/ 903b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 904b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 905b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LAO =26, /*[0E80]*/ 906b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 907b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 908b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TIBETAN =27, /*[0F00]*/ 909b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 910b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 911b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MYANMAR =28, /*[1000]*/ 912b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 913b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 914b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GEORGIAN =29, /*[10A0]*/ 915b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 916b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 917b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HANGUL_JAMO =30, /*[1100]*/ 918b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 919b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 920b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ETHIOPIC =31, /*[1200]*/ 921b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 922b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 923b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CHEROKEE =32, /*[13A0]*/ 924b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 925b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 926b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS =33, /*[1400]*/ 927b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 928b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 929b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_OGHAM =34, /*[1680]*/ 930b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 931b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 932b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_RUNIC =35, /*[16A0]*/ 933b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 934b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 935b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KHMER =36, /*[1780]*/ 936b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 937b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 938b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MONGOLIAN =37, /*[1800]*/ 939b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 940b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 941b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_EXTENDED_ADDITIONAL =38, /*[1E00]*/ 942b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 943b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 944b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GREEK_EXTENDED =39, /*[1F00]*/ 945b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 946b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 947b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GENERAL_PUNCTUATION =40, /*[2000]*/ 948b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 949b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 950b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPERSCRIPTS_AND_SUBSCRIPTS =41, /*[2070]*/ 951b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 952b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 953b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CURRENCY_SYMBOLS =42, /*[20A0]*/ 954b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 955b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** 956b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 3.2 renames this block to "Combining Diacritical Marks for Symbols". 957b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 958b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 959b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COMBINING_MARKS_FOR_SYMBOLS =43, /*[20D0]*/ 960b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 961b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 962b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LETTERLIKE_SYMBOLS =44, /*[2100]*/ 963b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 964b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 965b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_NUMBER_FORMS =45, /*[2150]*/ 966b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 967b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 968b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARROWS =46, /*[2190]*/ 969b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 970b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 971b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MATHEMATICAL_OPERATORS =47, /*[2200]*/ 972b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 973b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 974b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MISCELLANEOUS_TECHNICAL =48, /*[2300]*/ 975b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 976b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 977b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CONTROL_PICTURES =49, /*[2400]*/ 978b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 979b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 980b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_OPTICAL_CHARACTER_RECOGNITION =50, /*[2440]*/ 981b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 982b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 983b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ENCLOSED_ALPHANUMERICS =51, /*[2460]*/ 984b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 985b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 986b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BOX_DRAWING =52, /*[2500]*/ 987b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 988b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 989b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BLOCK_ELEMENTS =53, /*[2580]*/ 990b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 991b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 992b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GEOMETRIC_SHAPES =54, /*[25A0]*/ 993b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 994b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 995b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MISCELLANEOUS_SYMBOLS =55, /*[2600]*/ 996b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 997b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 998b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_DINGBATS =56, /*[2700]*/ 999b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1000b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1001b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BRAILLE_PATTERNS =57, /*[2800]*/ 1002b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1003b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1004b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_RADICALS_SUPPLEMENT =58, /*[2E80]*/ 1005b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1006b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1007b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KANGXI_RADICALS =59, /*[2F00]*/ 1008b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1009b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1010b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_IDEOGRAPHIC_DESCRIPTION_CHARACTERS =60, /*[2FF0]*/ 1011b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1012b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1013b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_SYMBOLS_AND_PUNCTUATION =61, /*[3000]*/ 1014b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1015b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1016b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HIRAGANA =62, /*[3040]*/ 1017b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1018b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1019b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KATAKANA =63, /*[30A0]*/ 1020b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1021b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1022b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BOPOMOFO =64, /*[3100]*/ 1023b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1024b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1025b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HANGUL_COMPATIBILITY_JAMO =65, /*[3130]*/ 1026b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1027b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1028b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KANBUN =66, /*[3190]*/ 1029b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1030b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1031b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BOPOMOFO_EXTENDED =67, /*[31A0]*/ 1032b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1033b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1034b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ENCLOSED_CJK_LETTERS_AND_MONTHS =68, /*[3200]*/ 1035b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1036b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1037b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_COMPATIBILITY =69, /*[3300]*/ 1038b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1039b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1040b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A =70, /*[3400]*/ 1041b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1042b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1043b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_UNIFIED_IDEOGRAPHS =71, /*[4E00]*/ 1044b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1045b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1046b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_YI_SYLLABLES =72, /*[A000]*/ 1047b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1048b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1049b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_YI_RADICALS =73, /*[A490]*/ 1050b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1051b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1052b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HANGUL_SYLLABLES =74, /*[AC00]*/ 1053b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1054b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1055b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HIGH_SURROGATES =75, /*[D800]*/ 1056b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1057b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1058b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HIGH_PRIVATE_USE_SURROGATES =76, /*[DB80]*/ 1059b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1060b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1061b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LOW_SURROGATES =77, /*[DC00]*/ 1062b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1063b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** 1064b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as UBLOCK_PRIVATE_USE_AREA. 1065b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Until Unicode 3.1.1, the corresponding block name was "Private Use", 1066b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and multiple code point ranges had this block. 1067b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 3.2 renames the block for the BMP PUA to "Private Use Area" and 1068b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * adds separate blocks for the supplementary PUAs. 1069b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1070b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1071b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1072b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PRIVATE_USE = 78, 1073b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** 1074b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as UBLOCK_PRIVATE_USE. 1075b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Until Unicode 3.1.1, the corresponding block name was "Private Use", 1076b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and multiple code point ranges had this block. 1077b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 3.2 renames the block for the BMP PUA to "Private Use Area" and 1078b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * adds separate blocks for the supplementary PUAs. 1079b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1080b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1081b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1082b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PRIVATE_USE_AREA =UBLOCK_PRIVATE_USE, /*[E000]*/ 1083b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1084b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1085b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS =79, /*[F900]*/ 1086b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1087b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1088b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ALPHABETIC_PRESENTATION_FORMS =80, /*[FB00]*/ 1089b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1090b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1091b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARABIC_PRESENTATION_FORMS_A =81, /*[FB50]*/ 1092b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1093b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1094b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COMBINING_HALF_MARKS =82, /*[FE20]*/ 1095b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1096b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1097b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_COMPATIBILITY_FORMS =83, /*[FE30]*/ 1098b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1099b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1100b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SMALL_FORM_VARIANTS =84, /*[FE50]*/ 1101b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1102b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1103b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARABIC_PRESENTATION_FORMS_B =85, /*[FE70]*/ 1104b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1105b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1106b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SPECIALS =86, /*[FFF0]*/ 1107b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1108b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1109b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS =87, /*[FF00]*/ 1110b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1111b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* New blocks in Unicode 3.1 */ 1112b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1113b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1114b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_OLD_ITALIC = 88 , /*[10300]*/ 1115b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1116b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GOTHIC = 89 , /*[10330]*/ 1117b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1118b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_DESERET = 90 , /*[10400]*/ 1119b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1120b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BYZANTINE_MUSICAL_SYMBOLS = 91 , /*[1D000]*/ 1121b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1122b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MUSICAL_SYMBOLS = 92 , /*[1D100]*/ 1123b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1124b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MATHEMATICAL_ALPHANUMERIC_SYMBOLS = 93 , /*[1D400]*/ 1125b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1126b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B = 94 , /*[20000]*/ 1127b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1128b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT = 95 , /*[2F800]*/ 1129b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1130b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAGS = 96, /*[E0000]*/ 1131b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1132b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* New blocks in Unicode 3.2 */ 1133b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1134b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** 1135b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 4.0.1 renames the "Cyrillic Supplementary" block to "Cyrillic Supplement". 1136b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1137b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1138b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CYRILLIC_SUPPLEMENTARY = 97, 1139b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.0 */ 1140b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CYRILLIC_SUPPLEMENT = UBLOCK_CYRILLIC_SUPPLEMENTARY, /*[0500]*/ 1141b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1142b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAGALOG = 98, /*[1700]*/ 1143b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1144b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_HANUNOO = 99, /*[1720]*/ 1145b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1146b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BUHID = 100, /*[1740]*/ 1147b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1148b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAGBANWA = 101, /*[1760]*/ 1149b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1150b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A = 102, /*[27C0]*/ 1151b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1152b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTAL_ARROWS_A = 103, /*[27F0]*/ 1153b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1154b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTAL_ARROWS_B = 104, /*[2900]*/ 1155b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1156b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B = 105, /*[2980]*/ 1157b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1158b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTAL_MATHEMATICAL_OPERATORS = 106, /*[2A00]*/ 1159b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1160b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KATAKANA_PHONETIC_EXTENSIONS = 107, /*[31F0]*/ 1161b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1162b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_VARIATION_SELECTORS = 108, /*[FE00]*/ 1163b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1164b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_A = 109, /*[F0000]*/ 1165b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.2 */ 1166b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_B = 110, /*[100000]*/ 1167b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1168b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* New blocks in Unicode 4 */ 1169b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1170b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1171b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LIMBU = 111, /*[1900]*/ 1172b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1173b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAI_LE = 112, /*[1950]*/ 1174b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1175b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KHMER_SYMBOLS = 113, /*[19E0]*/ 1176b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1177b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PHONETIC_EXTENSIONS = 114, /*[1D00]*/ 1178b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1179b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MISCELLANEOUS_SYMBOLS_AND_ARROWS = 115, /*[2B00]*/ 1180b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1181b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_YIJING_HEXAGRAM_SYMBOLS = 116, /*[4DC0]*/ 1182b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1183b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LINEAR_B_SYLLABARY = 117, /*[10000]*/ 1184b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1185b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LINEAR_B_IDEOGRAMS = 118, /*[10080]*/ 1186b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1187b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_AEGEAN_NUMBERS = 119, /*[10100]*/ 1188b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1189b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_UGARITIC = 120, /*[10380]*/ 1190b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1191b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SHAVIAN = 121, /*[10450]*/ 1192b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1193b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_OSMANYA = 122, /*[10480]*/ 1194b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1195b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CYPRIOT_SYLLABARY = 123, /*[10800]*/ 1196b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1197b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TAI_XUAN_JING_SYMBOLS = 124, /*[1D300]*/ 1198b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.6 */ 1199b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_VARIATION_SELECTORS_SUPPLEMENT = 125, /*[E0100]*/ 1200b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1201b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* New blocks in Unicode 4.1 */ 1202b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1203b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1204b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ANCIENT_GREEK_MUSICAL_NOTATION = 126, /*[1D200]*/ 1205b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1206b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ANCIENT_GREEK_NUMBERS = 127, /*[10140]*/ 1207b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1208b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ARABIC_SUPPLEMENT = 128, /*[0750]*/ 1209b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1210b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BUGINESE = 129, /*[1A00]*/ 1211b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1212b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CJK_STROKES = 130, /*[31C0]*/ 1213b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1214b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT = 131, /*[1DC0]*/ 1215b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1216b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COPTIC = 132, /*[2C80]*/ 1217b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1218b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ETHIOPIC_EXTENDED = 133, /*[2D80]*/ 1219b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1220b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_ETHIOPIC_SUPPLEMENT = 134, /*[1380]*/ 1221b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1222b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GEORGIAN_SUPPLEMENT = 135, /*[2D00]*/ 1223b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1224b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_GLAGOLITIC = 136, /*[2C00]*/ 1225b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1226b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_KHAROSHTHI = 137, /*[10A00]*/ 1227b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1228b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_MODIFIER_TONE_LETTERS = 138, /*[A700]*/ 1229b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1230b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_NEW_TAI_LUE = 139, /*[1980]*/ 1231b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1232b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_OLD_PERSIAN = 140, /*[103A0]*/ 1233b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1234b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PHONETIC_EXTENSIONS_SUPPLEMENT = 141, /*[1D80]*/ 1235b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1236b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SUPPLEMENTAL_PUNCTUATION = 142, /*[2E00]*/ 1237b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1238b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_SYLOTI_NAGRI = 143, /*[A800]*/ 1239b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1240b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_TIFINAGH = 144, /*[2D30]*/ 1241b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.4 */ 1242b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_VERTICAL_FORMS = 145, /*[FE10]*/ 1243b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1244b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /* New blocks in Unicode 5.0 */ 1245b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1246b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1247b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_NKO = 146, /*[07C0]*/ 1248b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1249b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_BALINESE = 147, /*[1B00]*/ 1250b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1251b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_EXTENDED_C = 148, /*[2C60]*/ 1252b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1253b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_LATIN_EXTENDED_D = 149, /*[A720]*/ 1254b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1255b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PHAGS_PA = 150, /*[A840]*/ 1256b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1257b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_PHOENICIAN = 151, /*[10900]*/ 1258b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1259b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CUNEIFORM = 152, /*[12000]*/ 1260b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1261b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_CUNEIFORM_NUMBERS_AND_PUNCTUATION = 153, /*[12400]*/ 1262b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 3.6 */ 1263b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_COUNTING_ROD_NUMERALS = 154, /*[1D360]*/ 1264b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1265c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru /* New blocks in Unicode 5.1 */ 1266c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru 1267b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1268c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_SUNDANESE = 155, /*[1B80]*/ 1269b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1270c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_LEPCHA = 156, /*[1C00]*/ 1271b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1272c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_OL_CHIKI = 157, /*[1C50]*/ 1273b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1274c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_CYRILLIC_EXTENDED_A = 158, /*[2DE0]*/ 1275b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1276c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_VAI = 159, /*[A500]*/ 1277b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1278c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_CYRILLIC_EXTENDED_B = 160, /*[A640]*/ 1279b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1280c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_SAURASHTRA = 161, /*[A880]*/ 1281b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1282c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_KAYAH_LI = 162, /*[A900]*/ 1283b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1284c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_REJANG = 163, /*[A930]*/ 1285b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1286c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_CHAM = 164, /*[AA00]*/ 1287b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1288c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_ANCIENT_SYMBOLS = 165, /*[10190]*/ 1289b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1290c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_PHAISTOS_DISC = 166, /*[101D0]*/ 1291b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1292c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_LYCIAN = 167, /*[10280]*/ 1293b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1294c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_CARIAN = 168, /*[102A0]*/ 1295b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1296c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_LYDIAN = 169, /*[10920]*/ 1297b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1298c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_MAHJONG_TILES = 170, /*[1F000]*/ 1299b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru /** @stable ICU 4.0 */ 1300c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru UBLOCK_DOMINO_TILES = 171, /*[1F030]*/ 1301c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru 130250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho /* New blocks in Unicode 5.2 */ 130350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 130427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 130550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_SAMARITAN = 172, /*[0800]*/ 130627f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 130750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED = 173, /*[18B0]*/ 130827f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 130950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_TAI_THAM = 174, /*[1A20]*/ 131027f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 131150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_VEDIC_EXTENSIONS = 175, /*[1CD0]*/ 131227f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 131350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_LISU = 176, /*[A4D0]*/ 131427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 131550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_BAMUM = 177, /*[A6A0]*/ 131627f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 131750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_COMMON_INDIC_NUMBER_FORMS = 178, /*[A830]*/ 131827f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 131950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_DEVANAGARI_EXTENDED = 179, /*[A8E0]*/ 132027f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 132150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_HANGUL_JAMO_EXTENDED_A = 180, /*[A960]*/ 132227f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 132350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_JAVANESE = 181, /*[A980]*/ 132427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 132550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_MYANMAR_EXTENDED_A = 182, /*[AA60]*/ 132627f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 132750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_TAI_VIET = 183, /*[AA80]*/ 132827f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 132950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_MEETEI_MAYEK = 184, /*[ABC0]*/ 133027f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 133150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_HANGUL_JAMO_EXTENDED_B = 185, /*[D7B0]*/ 133227f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 133350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_IMPERIAL_ARAMAIC = 186, /*[10840]*/ 133427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 133550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_OLD_SOUTH_ARABIAN = 187, /*[10A60]*/ 133627f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 133750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_AVESTAN = 188, /*[10B00]*/ 133827f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 133950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_INSCRIPTIONAL_PARTHIAN = 189, /*[10B40]*/ 134027f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 134150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_INSCRIPTIONAL_PAHLAVI = 190, /*[10B60]*/ 134227f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 134350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_OLD_TURKIC = 191, /*[10C00]*/ 134427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 134550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_RUMI_NUMERAL_SYMBOLS = 192, /*[10E60]*/ 134627f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 134750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_KAITHI = 193, /*[11080]*/ 134827f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 134950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_EGYPTIAN_HIEROGLYPHS = 194, /*[13000]*/ 135027f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 135150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_ENCLOSED_ALPHANUMERIC_SUPPLEMENT = 195, /*[1F100]*/ 135227f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 135350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT = 196, /*[1F200]*/ 135427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.4 */ 135550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C = 197, /*[2A700]*/ 135650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 135727f654740f2a26ad62a5c155af9199af9e69b889claireho /* New blocks in Unicode 6.0 */ 135827f654740f2a26ad62a5c155af9199af9e69b889claireho 135927f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 136027f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_MANDAIC = 198, /*[0840]*/ 136127f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 136227f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_BATAK = 199, /*[1BC0]*/ 136327f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 136427f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_ETHIOPIC_EXTENDED_A = 200, /*[AB00]*/ 136527f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 136627f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_BRAHMI = 201, /*[11000]*/ 136727f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 136827f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_BAMUM_SUPPLEMENT = 202, /*[16800]*/ 136927f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 137027f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_KANA_SUPPLEMENT = 203, /*[1B000]*/ 137127f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 137227f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_PLAYING_CARDS = 204, /*[1F0A0]*/ 137327f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 137427f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS = 205, /*[1F300]*/ 137527f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 137627f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_EMOTICONS = 206, /*[1F600]*/ 137727f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 137827f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_TRANSPORT_AND_MAP_SYMBOLS = 207, /*[1F680]*/ 137927f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 138027f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_ALCHEMICAL_SYMBOLS = 208, /*[1F700]*/ 138127f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 4.6 */ 138227f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D = 209, /*[2B740]*/ 138327f654740f2a26ad62a5c155af9199af9e69b889claireho 138427f654740f2a26ad62a5c155af9199af9e69b889claireho /** @stable ICU 2.0 */ 138527f654740f2a26ad62a5c155af9199af9e69b889claireho UBLOCK_COUNT = 210, 1386b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1387b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** @stable ICU 2.0 */ 1388b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UBLOCK_INVALID_CODE=-1 1389b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru}; 1390b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1391b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** @stable ICU 2.0 */ 1392b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UBlockCode UBlockCode; 1393b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1394b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1395b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * East Asian Width constants. 1396b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1397b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_EAST_ASIAN_WIDTH 1398b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyValue 1399b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1400b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1401b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UEastAsianWidth { 1402b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_NEUTRAL, /*[N]*/ /*See note !!*/ 1403b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_AMBIGUOUS, /*[A]*/ 1404b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_HALFWIDTH, /*[H]*/ 1405b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_FULLWIDTH, /*[F]*/ 1406b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_NARROW, /*[Na]*/ 1407b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_WIDE, /*[W]*/ 1408b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EA_COUNT 1409b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UEastAsianWidth; 1410b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/* 1411b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Implementation note: 1412b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Keep UEastAsianWidth constant values in sync with names list in genprops/props2.c. 1413b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1414b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1415b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1416b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Selector constants for u_charName(). 1417b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_charName() returns the "modern" name of a 1418b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode character; or the name that was defined in 1419b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode version 1.0, before the Unicode standard merged 1420b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * with ISO-10646; or an "extended" name that gives each 1421b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode code point a unique name. 1422b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1423b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charName 1424b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1425b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1426b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UCharNameChoice { 1427b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_UNICODE_CHAR_NAME, 1428b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_UNICODE_10_CHAR_NAME, 1429b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_EXTENDED_CHAR_NAME, 143027f654740f2a26ad62a5c155af9199af9e69b889claireho U_CHAR_NAME_ALIAS, /**< Corrected name from NameAliases.txt. @stable ICU 4.4 */ 1431b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_CHAR_NAME_CHOICE_COUNT 1432b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UCharNameChoice; 1433b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1434b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1435b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Selector constants for u_getPropertyName() and 1436b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_getPropertyValueName(). These selectors are used to choose which 1437b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * name is returned for a given property or value. All properties and 1438b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * values have a long name. Most have a short name, but some do not. 1439b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode allows for additional names, beyond the long and short 1440b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * name, which would be indicated by U_LONG_PROPERTY_NAME + i, where 1441b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * i=1, 2,... 1442b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1443b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getPropertyName() 1444b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getPropertyValueName() 1445b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.4 1446b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1447b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UPropertyNameChoice { 1448b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SHORT_PROPERTY_NAME, 1449b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LONG_PROPERTY_NAME, 1450b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_PROPERTY_NAME_CHOICE_COUNT 1451b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UPropertyNameChoice; 1452b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1453b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1454b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Decomposition Type constants. 1455b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1456b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_DECOMPOSITION_TYPE 1457b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1458b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1459b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UDecompositionType { 1460b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_NONE, /*[none]*/ /*See note !!*/ 1461b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_CANONICAL, /*[can]*/ 1462b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_COMPAT, /*[com]*/ 1463b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_CIRCLE, /*[enc]*/ 1464b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_FINAL, /*[fin]*/ 1465b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_FONT, /*[font]*/ 1466b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_FRACTION, /*[fra]*/ 1467b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_INITIAL, /*[init]*/ 1468b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_ISOLATED, /*[iso]*/ 1469b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_MEDIAL, /*[med]*/ 1470b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_NARROW, /*[nar]*/ 1471b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_NOBREAK, /*[nb]*/ 1472b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_SMALL, /*[sml]*/ 1473b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_SQUARE, /*[sqr]*/ 1474b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_SUB, /*[sub]*/ 1475b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_SUPER, /*[sup]*/ 1476b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_VERTICAL, /*[vert]*/ 1477b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_WIDE, /*[wide]*/ 1478b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_DT_COUNT /* 18 */ 1479b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UDecompositionType; 1480b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1481b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1482b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Joining Type constants. 1483b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1484b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_JOINING_TYPE 1485b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1486b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1487b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UJoiningType { 1488b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_NON_JOINING, /*[U]*/ /*See note !!*/ 1489b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_JOIN_CAUSING, /*[C]*/ 1490b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_DUAL_JOINING, /*[D]*/ 1491b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_LEFT_JOINING, /*[L]*/ 1492b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_RIGHT_JOINING, /*[R]*/ 1493b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_TRANSPARENT, /*[T]*/ 1494b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JT_COUNT /* 6 */ 1495b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UJoiningType; 1496b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1497b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1498b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Joining Group constants. 1499b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1500b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_JOINING_GROUP 1501b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1502b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1503b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UJoiningGroup { 1504b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_NO_JOINING_GROUP, 1505b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_AIN, 1506b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_ALAPH, 1507b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_ALEF, 1508b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_BEH, 1509b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_BETH, 1510b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_DAL, 1511b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_DALATH_RISH, 1512b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_E, 1513b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_FEH, 1514b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_FINAL_SEMKATH, 1515b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_GAF, 1516b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_GAMAL, 1517b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_HAH, 151827f654740f2a26ad62a5c155af9199af9e69b889claireho U_JG_TEH_MARBUTA_GOAL, /**< @stable ICU 4.6 */ 151927f654740f2a26ad62a5c155af9199af9e69b889claireho U_JG_HAMZA_ON_HEH_GOAL=U_JG_TEH_MARBUTA_GOAL, 1520b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_HE, 1521b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_HEH, 1522b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_HEH_GOAL, 1523b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_HETH, 1524b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_KAF, 1525b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_KAPH, 1526b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_KNOTTED_HEH, 1527b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_LAM, 1528b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_LAMADH, 1529b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_MEEM, 1530b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_MIM, 1531b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_NOON, 1532b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_NUN, 1533b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_PE, 1534b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_QAF, 1535b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_QAPH, 1536b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_REH, 1537b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_REVERSED_PE, 1538b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SAD, 1539b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SADHE, 1540b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SEEN, 1541b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SEMKATH, 1542b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SHIN, 1543b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SWASH_KAF, 1544b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_SYRIAC_WAW, 1545b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_TAH, 1546b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_TAW, 1547b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_TEH_MARBUTA, 1548b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_TETH, 1549b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_WAW, 1550b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_YEH, 1551b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_YEH_BARREE, 1552b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_YEH_WITH_TAIL, 1553b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_YUDH, 1554b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_YUDH_HE, 1555b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_ZAIN, 1556b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_FE, /**< @stable ICU 2.6 */ 1557b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_KHAPH, /**< @stable ICU 2.6 */ 1558b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_ZHAIN, /**< @stable ICU 2.6 */ 1559b0ac937921a2c196d8b9da665135bf6ba01a1ccfJean-Baptiste Queru U_JG_BURUSHASKI_YEH_BARREE, /**< @stable ICU 4.0 */ 156027f654740f2a26ad62a5c155af9199af9e69b889claireho U_JG_FARSI_YEH, /**< @stable ICU 4.4 */ 156127f654740f2a26ad62a5c155af9199af9e69b889claireho U_JG_NYA, /**< @stable ICU 4.4 */ 1562b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_JG_COUNT 1563b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UJoiningGroup; 1564b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1565b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1566b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Grapheme Cluster Break constants. 1567b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1568b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_GRAPHEME_CLUSTER_BREAK 1569b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 3.4 1570b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1571b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UGraphemeClusterBreak { 1572b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_OTHER = 0, /*[XX]*/ /*See note !!*/ 1573b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_CONTROL = 1, /*[CN]*/ 1574b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_CR = 2, /*[CR]*/ 1575b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_EXTEND = 3, /*[EX]*/ 1576b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_L = 4, /*[L]*/ 1577b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_LF = 5, /*[LF]*/ 1578b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_LV = 6, /*[LV]*/ 1579b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_LVT = 7, /*[LVT]*/ 1580b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_T = 8, /*[T]*/ 1581b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_GCB_V = 9, /*[V]*/ 1582c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_GCB_SPACING_MARK = 10, /*[SM]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 1583c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_GCB_PREPEND = 11, /*[PP]*/ 1584c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_GCB_COUNT = 12 1585b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UGraphemeClusterBreak; 1586b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1587b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1588b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Word Break constants. 1589b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (UWordBreak is a pre-existing enum type in ubrk.h for word break status tags.) 1590b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1591b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_WORD_BREAK 1592b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 3.4 1593b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1594b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UWordBreakValues { 1595b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_OTHER = 0, /*[XX]*/ /*See note !!*/ 1596b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_ALETTER = 1, /*[LE]*/ 1597b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_FORMAT = 2, /*[FO]*/ 1598b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_KATAKANA = 3, /*[KA]*/ 1599b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_MIDLETTER = 4, /*[ML]*/ 1600b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_MIDNUM = 5, /*[MN]*/ 1601b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_NUMERIC = 6, /*[NU]*/ 1602b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_WB_EXTENDNUMLET = 7, /*[EX]*/ 1603c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_CR = 8, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 1604c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_EXTEND = 9, /*[Extend]*/ 1605c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_LF = 10, /*[LF]*/ 1606c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_MIDNUMLET =11, /*[MB]*/ 1607c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_NEWLINE =12, /*[NL]*/ 1608c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_WB_COUNT = 13 1609b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UWordBreakValues; 1610b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1611b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1612b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Sentence Break constants. 1613b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1614b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_SENTENCE_BREAK 1615b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 3.4 1616b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1617b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum USentenceBreak { 1618b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_OTHER = 0, /*[XX]*/ /*See note !!*/ 1619b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_ATERM = 1, /*[AT]*/ 1620b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_CLOSE = 2, /*[CL]*/ 1621b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_FORMAT = 3, /*[FO]*/ 1622b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_LOWER = 4, /*[LO]*/ 1623b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_NUMERIC = 5, /*[NU]*/ 1624b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_OLETTER = 6, /*[LE]*/ 1625b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_SEP = 7, /*[SE]*/ 1626b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_SP = 8, /*[SP]*/ 1627b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_SB_STERM = 9, /*[ST]*/ 1628c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_UPPER = 10, /*[UP]*/ 1629c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_CR = 11, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 1630c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_EXTEND = 12, /*[EX]*/ 1631c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_LF = 13, /*[LF]*/ 1632c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_SCONTINUE = 14, /*[SC]*/ 1633c69afcec261fc345fda8daf46f0ea6b4351dc777Jean-Baptiste Queru U_SB_COUNT = 15 1634b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} USentenceBreak; 1635b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1636b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1637b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Line Break constants. 1638b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1639b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_LINE_BREAK 1640b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1641b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1642b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum ULineBreak { 1643b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_UNKNOWN = 0, /*[XX]*/ /*See note !!*/ 1644b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_AMBIGUOUS = 1, /*[AI]*/ 1645b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_ALPHABETIC = 2, /*[AL]*/ 1646b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_BREAK_BOTH = 3, /*[B2]*/ 1647b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_BREAK_AFTER = 4, /*[BA]*/ 1648b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_BREAK_BEFORE = 5, /*[BB]*/ 1649b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_MANDATORY_BREAK = 6, /*[BK]*/ 1650b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_CONTINGENT_BREAK = 7, /*[CB]*/ 1651b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_CLOSE_PUNCTUATION = 8, /*[CL]*/ 1652b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_COMBINING_MARK = 9, /*[CM]*/ 1653b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_CARRIAGE_RETURN = 10, /*[CR]*/ 1654b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_EXCLAMATION = 11, /*[EX]*/ 1655b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_GLUE = 12, /*[GL]*/ 1656b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_HYPHEN = 13, /*[HY]*/ 1657b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_IDEOGRAPHIC = 14, /*[ID]*/ 1658b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_INSEPERABLE = 15, 1659b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru /** Renamed from the misspelled "inseperable" in Unicode 4.0.1/ICU 3.0 @stable ICU 3.0 */ 1660b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_INSEPARABLE=U_LB_INSEPERABLE,/*[IN]*/ 1661b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_INFIX_NUMERIC = 16, /*[IS]*/ 1662b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_LINE_FEED = 17, /*[LF]*/ 1663b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_NONSTARTER = 18, /*[NS]*/ 1664b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_NUMERIC = 19, /*[NU]*/ 1665b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_OPEN_PUNCTUATION = 20, /*[OP]*/ 1666b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_POSTFIX_NUMERIC = 21, /*[PO]*/ 1667b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_PREFIX_NUMERIC = 22, /*[PR]*/ 1668b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_QUOTATION = 23, /*[QU]*/ 1669b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_COMPLEX_CONTEXT = 24, /*[SA]*/ 1670b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_SURROGATE = 25, /*[SG]*/ 1671b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_SPACE = 26, /*[SP]*/ 1672b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_BREAK_SYMBOLS = 27, /*[SY]*/ 1673b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_ZWSPACE = 28, /*[ZW]*/ 1674b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_NEXT_LINE = 29, /*[NL]*/ /* from here on: new in Unicode 4/ICU 2.6 */ 1675b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_WORD_JOINER = 30, /*[WJ]*/ 1676b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_H2 = 31, /*[H2]*/ /* from here on: new in Unicode 4.1/ICU 3.4 */ 1677b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_H3 = 32, /*[H3]*/ 1678b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_JL = 33, /*[JL]*/ 1679b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_JT = 34, /*[JT]*/ 1680b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_LB_JV = 35, /*[JV]*/ 168150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho U_LB_CLOSE_PARENTHESIS = 36, /*[CP]*/ /* new in Unicode 5.2/ICU 4.4 */ 168250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho U_LB_COUNT = 37 1683b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} ULineBreak; 1684b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1685b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1686b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Numeric Type constants. 1687b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1688b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_NUMERIC_TYPE 1689b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1690b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1691b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UNumericType { 1692b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NT_NONE, /*[None]*/ /*See note !!*/ 1693b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NT_DECIMAL, /*[de]*/ 1694b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NT_DIGIT, /*[di]*/ 1695b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NT_NUMERIC, /*[nu]*/ 1696b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_NT_COUNT 1697b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UNumericType; 1698b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1699b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1700b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Hangul Syllable Type constants. 1701b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1702b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_HANGUL_SYLLABLE_TYPE 1703b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 1704b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1705b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef enum UHangulSyllableType { 1706b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_NOT_APPLICABLE, /*[NA]*/ /*See note !!*/ 1707b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_LEADING_JAMO, /*[L]*/ 1708b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_VOWEL_JAMO, /*[V]*/ 1709b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_TRAILING_JAMO, /*[T]*/ 1710b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_LV_SYLLABLE, /*[LV]*/ 1711b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_LVT_SYLLABLE, /*[LVT]*/ 1712b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru U_HST_COUNT 1713b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru} UHangulSyllableType; 1714b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1715b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1716b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check a binary Unicode property for a code point. 1717b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1718b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode, especially in version 3.2, defines many more properties than the 1719b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * original set in UnicodeData.txt. 1720b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1721b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The properties APIs are intended to reflect Unicode properties as defined 1722b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 1723b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For details about the properties see http://www.unicode.org/ucd/ . 1724b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For names of Unicode properties see the UCD file PropertyAliases.txt. 1725b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1726b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Important: If ICU is built with UCD files from Unicode versions below 3.2, 1727b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * then properties marked with "new in Unicode 3.2" are not or not fully available. 1728b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1729b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test. 1730b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param which UProperty selector constant, identifies which binary property to check. 1731b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT. 1732b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE or FALSE according to the binary Unicode property value for c. 1733b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Also FALSE if 'which' is out of bounds or if the Unicode version 1734b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * does not have data for the property at all, or not for this code point. 1735b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1736b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 1737b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyValue 1738b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 1739b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 1740b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1741b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1742b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_hasBinaryProperty(UChar32 c, UProperty which); 1743b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1744b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1745b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check if a code point has the Alphabetic Unicode property. 1746b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as u_hasBinaryProperty(c, UCHAR_ALPHABETIC). 1747b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is different from u_isalpha! 1748b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test 1749b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return true if the code point has the Alphabetic Unicode property, false otherwise 1750b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1751b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_ALPHABETIC 1752b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 1753b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1754b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 1755b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1756b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1757b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isUAlphabetic(UChar32 c); 1758b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1759b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1760b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check if a code point has the Lowercase Unicode property. 1761b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as u_hasBinaryProperty(c, UCHAR_LOWERCASE). 1762b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is different from u_islower! 1763b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test 1764b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return true if the code point has the Lowercase Unicode property, false otherwise 1765b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1766b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_LOWERCASE 1767b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_islower 1768b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1769b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 1770b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1771b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1772b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isULowercase(UChar32 c); 1773b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1774b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1775b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check if a code point has the Uppercase Unicode property. 1776b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as u_hasBinaryProperty(c, UCHAR_UPPERCASE). 1777b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is different from u_isupper! 1778b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test 1779b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return true if the code point has the Uppercase Unicode property, false otherwise 1780b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1781b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_UPPERCASE 1782b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isupper 1783b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1784b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 1785b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1786b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1787b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isUUppercase(UChar32 c); 1788b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1789b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1790b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Check if a code point has the White_Space Unicode property. 1791b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as u_hasBinaryProperty(c, UCHAR_WHITE_SPACE). 1792b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is different from both u_isspace and u_isWhitespace! 1793b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1794b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions; please see the uchar.h 1795b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * file documentation for a detailed comparison. 1796b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1797b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test 1798b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return true if the code point has the White_Space Unicode property, false otherwise. 1799b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1800b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_WHITE_SPACE 1801b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isWhitespace 1802b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isspace 1803b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isJavaSpaceChar 1804b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1805b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 1806b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1807b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1808b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isUWhiteSpace(UChar32 c); 1809b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1810b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1811b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the property value for an enumerated or integer Unicode property for a code point. 1812b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Also returns binary and mask property values. 1813b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1814b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode, especially in version 3.2, defines many more properties than the 1815b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * original set in UnicodeData.txt. 1816b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1817b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The properties APIs are intended to reflect Unicode properties as defined 1818b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 1819b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For details about the properties see http://www.unicode.org/ . 1820b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For names of Unicode properties see the UCD file PropertyAliases.txt. 1821b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1822b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Sample usage: 1823b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UEastAsianWidth ea=(UEastAsianWidth)u_getIntPropertyValue(c, UCHAR_EAST_ASIAN_WIDTH); 1824b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UBool b=(UBool)u_getIntPropertyValue(c, UCHAR_IDEOGRAPHIC); 1825b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1826b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to test. 1827b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param which UProperty selector constant, identifies which property to check. 1828b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 1829b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 1830b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 1831b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return Numeric value that is directly the property value or, 1832b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for enumerated properties, corresponds to the numeric value of the enumerated 1833b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * constant of the respective property value enumeration type 1834b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (cast to enum type if necessary). 1835b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns 0 or 1 (for FALSE/TRUE) for binary Unicode properties. 1836b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns a bit-mask for mask properties. 1837b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns 0 if 'which' is out of bounds or if the Unicode version 1838b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * does not have data for the property at all, or not for this code point. 1839b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1840b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 1841b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1842b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyMinValue 1843b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyMaxValue 1844b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 1845b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1846b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1847b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 1848b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getIntPropertyValue(UChar32 c, UProperty which); 1849b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1850b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1851b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the minimum value for an enumerated/integer/binary Unicode property. 1852b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Can be used together with u_getIntPropertyMaxValue 1853b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to allocate arrays of UnicodeSet or similar. 1854b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1855b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param which UProperty selector constant, identifies which binary property to check. 1856b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 1857b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT. 1858b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return Minimum value returned by u_getIntPropertyValue for a Unicode property. 1859b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 0 if the property selector is out of range. 1860b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1861b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 1862b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1863b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 1864b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyMaxValue 1865b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyValue 1866b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1867b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1868b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 1869b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getIntPropertyMinValue(UProperty which); 1870b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1871b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1872b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the maximum value for an enumerated/integer/binary Unicode property. 1873b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Can be used together with u_getIntPropertyMinValue 1874b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to allocate arrays of UnicodeSet or similar. 1875b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1876b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Examples for min/max values (for Unicode 3.2): 1877b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1878b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - UCHAR_BIDI_CLASS: 0/18 (U_LEFT_TO_RIGHT/U_BOUNDARY_NEUTRAL) 1879b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - UCHAR_SCRIPT: 0/45 (USCRIPT_COMMON/USCRIPT_TAGBANWA) 1880b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - UCHAR_IDEOGRAPHIC: 0/1 (FALSE/TRUE) 1881b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1882b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For undefined UProperty constant values, min/max values will be 0/-1. 1883b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1884b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param which UProperty selector constant, identifies which binary property to check. 1885b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 1886b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT. 1887b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return Maximum value returned by u_getIntPropertyValue for a Unicode property. 1888b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <=0 if the property selector is out of range. 1889b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1890b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 1891b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_hasBinaryProperty 1892b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getUnicodeVersion 1893b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyMaxValue 1894b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getIntPropertyValue 1895b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1896b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1897b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 1898b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getIntPropertyMaxValue(UProperty which); 1899b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1900b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1901b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the numeric value for a Unicode code point as defined in the 1902b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode Character Database. 1903b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1904b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * A "double" return type is necessary because 1905b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * some numeric values are fractions, negative, or too large for int32_t. 1906b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1907b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For characters without any numeric values in the Unicode Character Database, 1908b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * this function will return U_NO_NUMERIC_VALUE. 1909b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1910b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Similar to java.lang.Character.getNumericValue(), but u_getNumericValue() 1911b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * also supports negative values, large values, and fractions, 1912b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * while Java's getNumericValue() returns values 10..35 for ASCII letters. 1913b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1914b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c Code point to get the numeric value for. 1915b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return Numeric value of c, or U_NO_NUMERIC_VALUE if none is defined. 1916b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1917b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see U_NO_NUMERIC_VALUE 1918b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1919b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1920b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE double U_EXPORT2 1921b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getNumericValue(UChar32 c); 1922b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1923b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1924b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Special value that is returned by u_getNumericValue when 1925b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * no numeric value is defined for a code point. 1926b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1927b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getNumericValue 1928b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 1929b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1930b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_NO_NUMERIC_VALUE ((double)-123456789.) 1931b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1932b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1933b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point has the general category "Ll" 1934b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (lowercase letter). 1935b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1936b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isLowerCase(). 1937b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1938b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This misses some characters that are also lowercase but 1939b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * have a different general category value. 1940b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In order to include those, use UCHAR_LOWERCASE. 1941b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1942b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to being equivalent to a Java function, this also serves 1943b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as a C/POSIX migration function. 1944b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 1945b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 1946b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1947b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 1948b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is an Ll lowercase letter 1949b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1950b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_LOWERCASE 1951b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isupper 1952b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_istitle 1953b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1954b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1955b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1956b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_islower(UChar32 c); 1957b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1958b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1959b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point has the general category "Lu" 1960b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (uppercase letter). 1961b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1962b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isUpperCase(). 1963b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1964b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This misses some characters that are also uppercase but 1965b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * have a different general category value. 1966b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In order to include those, use UCHAR_UPPERCASE. 1967b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1968b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to being equivalent to a Java function, this also serves 1969b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as a C/POSIX migration function. 1970b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 1971b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 1972b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1973b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 1974b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is an Lu uppercase letter 1975b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1976b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_UPPERCASE 1977b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_islower 1978b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_istitle 1979b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_tolower 1980b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1981b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1982b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 1983b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isupper(UChar32 c); 1984b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 1985b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 1986b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a titlecase letter. 1987b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for general category "Lt" (titlecase letter). 1988b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1989b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isTitleCase(). 1990b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1991b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 1992b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is an Lt titlecase letter 1993b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 1994b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isupper 1995b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_islower 1996b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_totitle 1997b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 1998b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 1999b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2000b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_istitle(UChar32 c); 2001b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2002b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2003b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a digit character according to Java. 2004b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general category "Nd" (decimal digit numbers). 2005b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Beginning with Unicode 4, this is the same as 2006b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * testing for the Numeric_Type of Decimal. 2007b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2008b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isDigit(). 2009b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2010b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to being equivalent to a Java function, this also serves 2011b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as a C/POSIX migration function. 2012b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2013b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2014b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2015b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2016b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a digit character according to Character.isDigit() 2017b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2018b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2019b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2020b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2021b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isdigit(UChar32 c); 2022b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2023b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2024b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a letter character. 2025b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for general categories "L" (letters). 2026b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2027b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isLetter(). 2028b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2029b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to being equivalent to a Java function, this also serves 2030b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as a C/POSIX migration function. 2031b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2032b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2033b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2034b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2035b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a letter character 2036b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2037b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 2038b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalnum 2039b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2040b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2041b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2042b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isalpha(UChar32 c); 2043b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2044b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2045b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is an alphanumeric character 2046b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (letter or digit) according to Java. 2047b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general categories 2048b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "L" (letters) and "Nd" (decimal digit numbers). 2049b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2050b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isLetterOrDigit(). 2051b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2052b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to being equivalent to a Java function, this also serves 2053b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as a C/POSIX migration function. 2054b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2055b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2056b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2057b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2058b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is an alphanumeric character according to Character.isLetterOrDigit() 2059b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2060b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2061b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2062b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2063b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isalnum(UChar32 c); 2064b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2065b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2066b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a hexadecimal digit. 2067b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is equivalent to u_digit(c, 16)>=0. 2068b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general category "Nd" (decimal digit numbers) 2069b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as well as Latin letters a-f and A-F in both ASCII and Fullwidth ASCII. 2070b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (That is, for letters with code points 2071b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 0041..0046, 0061..0066, FF21..FF26, FF41..FF46.) 2072b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2073b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In order to narrow the definition of hexadecimal digits to only ASCII 2074b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * characters, use (c<=0x7f && u_isxdigit(c)). 2075b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2076b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2077b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2078b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2079b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2080b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2081b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a hexadecimal digit 2082b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2083b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2084b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2085b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2086b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isxdigit(UChar32 c); 2087b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2088b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2089b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a punctuation character. 2090b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general categories "P" (punctuation). 2091b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2092b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2093b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2094b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2095b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2096b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2097b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a punctuation character 2098b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2099b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2100b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2101b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2102b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_ispunct(UChar32 c); 2103b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2104b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2105b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a "graphic" character 2106b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (printable, excluding spaces). 2107b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * TRUE for all characters except those with general categories 2108b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Cc" (control codes), "Cf" (format controls), "Cs" (surrogates), 2109b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Cn" (unassigned), and "Z" (separators). 2110b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2111b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2112b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2113b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2114b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2115b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2116b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a "graphic" character 2117b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2118b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2119b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2120b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2121b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isgraph(UChar32 c); 2122b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2123b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2124b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a "blank" or "horizontal space", 2125b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * a character that visibly separates words on a line. 2126b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The following are equivalent definitions: 2127b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2128b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * TRUE for Unicode White_Space characters except for "vertical space controls" 2129b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * where "vertical space controls" are the following characters: 2130b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U+000A (LF) U+000B (VT) U+000C (FF) U+000D (CR) U+0085 (NEL) U+2028 (LS) U+2029 (PS) 2131b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2132b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * same as 2133b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2134b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * TRUE for U+0009 (TAB) and characters with general category "Zs" (space separators) 2135b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * except Zero Width Space (ZWSP, U+200B). 2136b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2137b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions; please see the uchar.h 2138b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * file documentation for a detailed comparison. 2139b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2140b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2141b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2142b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2143b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2144b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2145b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a "blank" 2146b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2147b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2148b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2149b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2150b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isblank(UChar32 c); 2151b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2152b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2153b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is "defined", 2154b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * which usually means that it is assigned a character. 2155b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for general categories other than "Cn" (other, not assigned), 2156b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * i.e., true for all code points mentioned in UnicodeData.txt. 2157b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2158b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note that non-character code points (e.g., U+FDD0) are not "defined" 2159b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (they are Cn), but surrogate code points are "defined" (Cs). 2160b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2161b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isDefined(). 2162b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2163b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2164b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is assigned a character 2165b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2166b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 2167b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 2168b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalnum 2169b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isupper 2170b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_islower 2171b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_istitle 2172b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2173b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2174b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2175b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isdefined(UChar32 c); 2176b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2177b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2178b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character is a space character or not. 2179b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2180b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions; please see the uchar.h 2181b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * file documentation for a detailed comparison. 2182b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2183b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2184b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2185b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2186b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2187b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the character to be tested 2188b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return true if the character is a space character; false otherwise. 2189b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2190b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isJavaSpaceChar 2191b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isWhitespace 2192b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isUWhiteSpace 2193b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2194b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2195b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2196b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isspace(UChar32 c); 2197b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2198b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2199b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determine if the specified code point is a space character according to Java. 2200b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general categories "Z" (separators), 2201b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * which does not include control codes (e.g., TAB or Line Feed). 2202b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2203b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isSpaceChar(). 2204b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2205b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions; please see the uchar.h 2206b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * file documentation for a detailed comparison. 2207b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2208b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2209b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a space character according to Character.isSpaceChar() 2210b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2211b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isspace 2212b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isWhitespace 2213b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isUWhiteSpace 2214b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2215b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2216b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2217b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isJavaSpaceChar(UChar32 c); 2218b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2219b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2220b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified code point is a whitespace character according to Java/ICU. 2221b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * A character is considered to be a Java whitespace character if and only 2222b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * if it satisfies one of the following criteria: 2223b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 222450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * - It is a Unicode Separator character (categories "Z" = "Zs" or "Zl" or "Zp"), but is not 222550294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * also a non-breaking space (U+00A0 NBSP or U+2007 Figure Space or U+202F Narrow NBSP). 2226b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+0009 HORIZONTAL TABULATION. 2227b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+000A LINE FEED. 2228b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+000B VERTICAL TABULATION. 2229b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+000C FORM FEED. 2230b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+000D CARRIAGE RETURN. 2231b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+001C FILE SEPARATOR. 2232b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+001D GROUP SEPARATOR. 2233b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+001E RECORD SEPARATOR. 2234b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - It is U+001F UNIT SEPARATOR. 2235b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 223650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * This API tries to sync with the semantics of Java's 223750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * java.lang.Character.isWhitespace(), but it may not return 223850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * the exact same results because of the Unicode version 223950294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * difference. 224050294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * 224150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Note: Unicode 4.0.1 changed U+200B ZERO WIDTH SPACE from a Space Separator (Zs) 224250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * to a Format Control (Cf). Since then, isWhitespace(0x200b) returns false. 224350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * See http://www.unicode.org/versions/Unicode4.0.1/ 2244b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2245b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: There are several ICU whitespace functions; please see the uchar.h 2246b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * file documentation for a detailed comparison. 2247b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2248b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2249b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a whitespace character according to Java/ICU 2250b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2251b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isspace 2252b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isJavaSpaceChar 2253b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isUWhiteSpace 2254b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2255b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2256b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2257b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isWhitespace(UChar32 c); 2258b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2259b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2260b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a control character 2261b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (as defined by this function). 2262b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * A control character is one of the following: 2263b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - ISO 8-bit control character (U+0000..U+001f and U+007f..U+009f) 2264b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - U_CONTROL_CHAR (Cc) 2265b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - U_FORMAT_CHAR (Cf) 2266b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - U_LINE_SEPARATOR (Zl) 2267b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * - U_PARAGRAPH_SEPARATOR (Zp) 2268b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2269b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2270b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2271b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2272b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2273b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2274b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a control character 2275b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2276b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 2277b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isprint 2278b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2279b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2280b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2281b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_iscntrl(UChar32 c); 2282b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2283b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2284b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is an ISO control code. 2285b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for U+0000..U+001f and U+007f..U+009f (general category "Cc"). 2286b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2287b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isISOControl(). 2288b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2289b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2290b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is an ISO control code 2291b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2292b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_iscntrl 2293b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.6 2294b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2295b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2296b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isISOControl(UChar32 c); 2297b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2298b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2299b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a printable character. 2300b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for general categories <em>other</em> than "C" (controls). 2301b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2302b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is a C/POSIX migration function. 2303b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See the comments about C/POSIX character classification functions in the 2304b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * documentation at the top of this header file. 2305b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2306b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2307b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a printable character 2308b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2309b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 2310b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_iscntrl 2311b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2312b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2313b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2314b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isprint(UChar32 c); 2315b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2316b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2317b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the specified code point is a base character. 2318b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for general categories "L" (letters), "N" (numbers), 2319b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Mc" (spacing combining marks), and "Me" (enclosing marks). 2320b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2321b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note that this is different from the Unicode definition in 2322b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * chapter 3.5, conformance clause D13, 2323b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * which defines base characters to be all characters (not Cn) 2324b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * that do not graphically combine with preceding characters (M) 2325b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and that are neither control (Cc) or format (Cf) characters. 2326b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2327b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2328b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is a base character according to this function 2329b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2330b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 2331b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 2332b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2333b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2334b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2335b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isbase(UChar32 c); 2336b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2337b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2338b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the bidirectional category value for the code point, 2339b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * which is used in the Unicode bidirectional algorithm 2340b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (UAX #9 http://www.unicode.org/reports/tr9/). 2341b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note that some <em>unassigned</em> code points have bidi values 2342b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * of R or AL because they are in blocks that are reserved 2343b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for Right-To-Left scripts. 2344b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2345b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.getDirectionality() 2346b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2347b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2348b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the bidirectional category (UCharDirection) value 2349b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2350b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharDirection 2351b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2352b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2353b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UCharDirection U_EXPORT2 2354b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charDirection(UChar32 c); 2355b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2356b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2357b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines whether the code point has the Bidi_Mirrored property. 2358b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This property is set for characters that are commonly used in 2359b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Right-To-Left contexts and need to be displayed with a "mirrored" 2360b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * glyph. 2361b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2362b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isMirrored(). 2363b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as UCHAR_BIDI_MIRRORED 2364b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2365b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2366b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the character has the Bidi_Mirrored property 2367b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2368b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_BIDI_MIRRORED 2369b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2370b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2371b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2372b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isMirrored(UChar32 c); 2373b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2374b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2375b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Maps the specified character to a "mirror-image" character. 2376b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For characters with the Bidi_Mirrored property, implementations 2377b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * sometimes need a "poor man's" mapping to another Unicode 2378b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * character (code point) such that the default glyph may serve 2379b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as the mirror-image of the default glyph of the specified 2380b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * character. This is useful for text conversion to and from 2381b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * codepages with visual order, and for displays without glyph 2382b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * selecetion capabilities. 2383b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2384b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be mapped 2385b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return another Unicode code point that may serve as a mirror-image 2386b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * substitute, or c itself if there is no such mapping or c 2387b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * does not have the Bidi_Mirrored property 2388b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2389b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_BIDI_MIRRORED 2390b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isMirrored 2391b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2392b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2393b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 2394b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charMirror(UChar32 c); 2395b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2396b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2397b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the general category value for the code point. 2398b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2399b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.getType(). 2400b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2401b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2402b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the general category (UCharCategory) value 2403b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2404b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharCategory 2405b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2406b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2407b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int8_t U_EXPORT2 2408b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charType(UChar32 c); 2409b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2410b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2411b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get a single-bit bit set for the general category of a character. 2412b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This bit set can be compared bitwise with U_GC_SM_MASK, U_GC_L_MASK, etc. 2413b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as U_MASK(u_charType(c)). 2414b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2415b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2416b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return a single-bit mask corresponding to the general category (UCharCategory) value 2417b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2418b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charType 2419b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharCategory 2420b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see U_GC_CN_MASK 2421b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 2422b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2423b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_GET_GC_MASK(c) U_MASK(u_charType(c)) 2424b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2425b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2426b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Callback from u_enumCharTypes(), is called for each contiguous range 2427b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * of code points c (where start<=c<limit) 2428b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * with the same Unicode general category ("character type"). 2429b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2430b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The callback function can stop the enumeration by returning FALSE. 2431b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2432b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param context an opaque pointer, as passed into utrie_enum() 2433b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param start the first code point in a contiguous range with value 2434b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param limit one past the last code point in a contiguous range with value 2435b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param type the general category for all code points in [start..limit[ 2436b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return FALSE to stop the enumeration 2437b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2438b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 2439b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharCategory 2440b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_enumCharTypes 2441b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2442b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef UBool U_CALLCONV 2443b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruUCharEnumTypeRange(const void *context, UChar32 start, UChar32 limit, UCharCategory type); 2444b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2445b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2446b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Enumerate efficiently all code points with their Unicode general categories. 2447b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2448b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This is useful for building data structures (e.g., UnicodeSet's), 2449b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for enumerating all assigned code points (type!=U_UNASSIGNED), etc. 2450b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2451b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For each contiguous range of code points with a given general category ("character type"), 2452b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the UCharEnumTypeRange function is called. 2453b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Adjacent ranges have different types. 2454b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The Unicode Standard guarantees that the numeric value of the type is 0..31. 2455b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2456b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param enumRange a pointer to a function that is called for each contiguous range 2457b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * of code points with the same general category 2458b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param context an opaque pointer that is passed on to the callback function 2459b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2460b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 2461b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharCategory 2462b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharEnumTypeRange 2463b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2464b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE void U_EXPORT2 2465b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context); 2466b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2467b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#if !UCONFIG_NO_NORMALIZATION 2468b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2469b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2470b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the combining class of the code point as specified in UnicodeData.txt. 2471b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2472b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point of the character 2473b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the combining class of the character 2474b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2475b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2476b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE uint8_t U_EXPORT2 2477b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getCombiningClass(UChar32 c); 2478b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2479b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#endif 2480b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2481b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2482b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the decimal digit value of a decimal digit character. 2483b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Such characters have the general category "Nd" (decimal digit numbers) 2484b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and a Numeric_Type of Decimal. 2485b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2486b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unlike ICU releases before 2.6, no digit values are returned for any 2487b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Han characters because Han number characters are often used with a special 2488b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Chinese-style number format (with characters for powers of 10 in between) 2489b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * instead of in decimal-positional notation. 2490b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 4 explicitly assigns Han number characters the Numeric_Type 2491b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Numeric instead of Decimal. 2492b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See Jitterbug 1483 for more details. 2493b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2494b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Use u_getIntPropertyValue(c, UCHAR_NUMERIC_TYPE) and u_getNumericValue() 2495b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for complete numeric Unicode properties. 2496b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2497b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point for which to get the decimal digit value 2498b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the decimal digit value of c, 2499b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or -1 if c is not a decimal digit character 2500b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2501b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_getNumericValue 2502b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2503b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2504b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 2505b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charDigitValue(UChar32 c); 2506b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2507b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2508b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the Unicode allocation block that contains the character. 2509b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2510b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2511b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the block value (UBlockCode) for c 2512b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2513b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UBlockCode 2514b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2515b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2516b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBlockCode U_EXPORT2 2517b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruublock_getCode(UChar32 c); 2518b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2519b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2520b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Retrieve the name of a Unicode character. 2521b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Depending on <code>nameChoice</code>, the character name written 2522b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * into the buffer is the "modern" name or the name that was defined 2523b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in Unicode version 1.0. 2524b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The name contains only "invariant" characters 2525b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * like A-Z, 0-9, space, and '-'. 2526b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 1.0 names are only retrieved if they are different from the modern 2527b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * names and if the data file contains the data for them. gennames may or may 2528b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * not be called with a command line option to include 1.0 names in unames.dat. 2529b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2530b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param code The character (code point) for which to get the name. 2531b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * It must be <code>0<=code<=0x10ffff</code>. 2532b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice Selector for which name to get. 2533b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param buffer Destination address for copying the name. 2534b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The name will always be zero-terminated. 2535b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If there is no name, then the buffer will be set to the empty string. 2536b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param bufferLength <code>==sizeof(buffer)</code> 2537b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param pErrorCode Pointer to a UErrorCode variable; 2538b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * check for <code>U_SUCCESS()</code> after <code>u_charName()</code> 2539b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * returns. 2540b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return The length of the name, or 0 if there is no name for this character. 2541b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the bufferLength is less than or equal to the length, then the buffer 2542b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * contains the truncated name and the returned length indicates the full 2543b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * length of the name. 2544b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The length does not include the zero-termination. 2545b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2546b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharNameChoice 2547b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charFromName 2548b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_enumCharNames 2549b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2550b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2551b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 2552b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charName(UChar32 code, UCharNameChoice nameChoice, 2553b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru char *buffer, int32_t bufferLength, 2554b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UErrorCode *pErrorCode); 2555b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2556b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2557b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the ISO 10646 comment for a character. 2558b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The ISO 10646 comment is an informative field in the Unicode Character 2559b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Database (UnicodeData.txt field 11) and is from the ISO 10646 names list. 2560b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 256150294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Note: Unicode 5.2 removes all ISO comment data, resulting in empty strings 256250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * returned for all characters. 256350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * 2564b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c The character (code point) for which to get the ISO comment. 2565b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * It must be <code>0<=c<=0x10ffff</code>. 2566b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param dest Destination address for copying the comment. 2567b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The comment will be zero-terminated if possible. 2568b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If there is no comment, then the buffer will be set to the empty string. 2569b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param destCapacity <code>==sizeof(dest)</code> 2570b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param pErrorCode Pointer to a UErrorCode variable; 2571b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * check for <code>U_SUCCESS()</code> after <code>u_getISOComment()</code> 2572b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * returns. 2573b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return The length of the comment, or 0 if there is no comment for this character. 2574b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the destCapacity is less than or equal to the length, then the buffer 2575b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * contains the truncated name and the returned length indicates the full 2576b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * length of the name. 2577b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The length does not include the zero-termination. 2578b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2579b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 2580b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2581b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 2582b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getISOComment(UChar32 c, 2583b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru char *dest, int32_t destCapacity, 2584b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UErrorCode *pErrorCode); 2585b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2586b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2587b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Find a Unicode character by its name and return its code point value. 2588b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The name is matched exactly and completely. 2589b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the name does not correspond to a code point, <i>pErrorCode</i> 2590b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * is set to <code>U_INVALID_CHAR_FOUND</code>. 2591b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * A Unicode 1.0 name is matched only if it differs from the modern name. 2592b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode names are all uppercase. Extended names are lowercase followed 2593b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * by an uppercase hexadecimal number, and within angle brackets. 2594b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2595b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice Selector for which name to match. 2596b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param name The name to match. 2597b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param pErrorCode Pointer to a UErrorCode variable 2598b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return The Unicode value of the code point with the given name, 2599b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or an undefined value if there is no such code point. 2600b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2601b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharNameChoice 2602b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charName 2603b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_enumCharNames 2604b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 1.7 2605b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2606b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 2607b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charFromName(UCharNameChoice nameChoice, 2608b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru const char *name, 2609b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UErrorCode *pErrorCode); 2610b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2611b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2612b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Type of a callback function for u_enumCharNames() that gets called 2613b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for each Unicode character with the code point value and 2614b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the character name. 2615b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If such a function returns FALSE, then the enumeration is stopped. 2616b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2617b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param context The context pointer that was passed to u_enumCharNames(). 2618b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param code The Unicode code point for the character with this name. 2619b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice Selector for which kind of names is enumerated. 2620b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param name The character's name, zero-terminated. 2621b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param length The length of the name. 2622b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the enumeration should continue, FALSE to stop it. 2623b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2624b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharNameChoice 2625b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_enumCharNames 2626b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 1.7 2627b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2628b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Querutypedef UBool U_CALLCONV UEnumCharNamesFn(void *context, 2629b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UChar32 code, 2630b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCharNameChoice nameChoice, 2631b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru const char *name, 2632b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru int32_t length); 2633b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2634b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2635b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Enumerate all assigned Unicode characters between the start and limit 2636b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * code points (start inclusive, limit exclusive) and call a function 2637b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for each, passing the code point value and the character name. 2638b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For Unicode 1.0 names, only those are enumerated that differ from the 2639b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * modern names. 2640b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2641b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param start The first code point in the enumeration range. 2642b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param limit One more than the last code point in the enumeration range 2643b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (the first one after the range). 2644b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param fn The function that is to be called for each character name. 2645b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param context An arbitrary pointer that is passed to the function. 2646b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice Selector for which kind of names to enumerate. 2647b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param pErrorCode Pointer to a UErrorCode variable 2648b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2649b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCharNameChoice 2650b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UEnumCharNamesFn 2651b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charName 2652b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charFromName 2653b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 1.7 2654b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2655b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE void U_EXPORT2 2656b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_enumCharNames(UChar32 start, UChar32 limit, 2657b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UEnumCharNamesFn *fn, 2658b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru void *context, 2659b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UCharNameChoice nameChoice, 2660b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UErrorCode *pErrorCode); 2661b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2662b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2663b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Return the Unicode name for a given property, as given in the 2664b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode database file PropertyAliases.txt. 2665b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2666b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition, this function maps the property 2667b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCHAR_GENERAL_CATEGORY_MASK to the synthetic names "gcm" / 2668b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "General_Category_Mask". These names are not in 2669b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * PropertyAliases.txt. 2670b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2671b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param property UProperty selector other than UCHAR_INVALID_CODE. 2672b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If out of range, NULL is returned. 2673b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2674b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice selector for which name to get. If out of range, 2675b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * NULL is returned. All properties have a long name. Most 2676b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * have a short name, but some do not. Unicode allows for 2677b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * additional names; if present these will be returned by 2678b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_LONG_PROPERTY_NAME + i, where i=1, 2,... 2679b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2680b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return a pointer to the name, or NULL if either the 2681b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * property or the nameChoice is out of range. If a given 2682b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * nameChoice returns NULL, then all larger values of 2683b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * nameChoice will return NULL, with one exception: if NULL is 2684b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * returned for U_SHORT_PROPERTY_NAME, then 2685b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_LONG_PROPERTY_NAME (and higher) may still return a 2686b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * non-NULL value. The returned pointer is valid until 2687b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_cleanup() is called. 2688b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2689b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 2690b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UPropertyNameChoice 2691b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.4 2692b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2693b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE const char* U_EXPORT2 2694b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getPropertyName(UProperty property, 2695b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UPropertyNameChoice nameChoice); 2696b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2697b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2698b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Return the UProperty enum for a given property name, as specified 2699b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in the Unicode database file PropertyAliases.txt. Short, long, and 2700b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * any other variants are recognized. 2701b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2702b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition, this function maps the synthetic names "gcm" / 2703b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "General_Category_Mask" to the property 2704b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCHAR_GENERAL_CATEGORY_MASK. These names are not in 2705b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * PropertyAliases.txt. 2706b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2707b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param alias the property name to be matched. The name is compared 2708b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * using "loose matching" as described in PropertyAliases.txt. 2709b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2710b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return a UProperty enum, or UCHAR_INVALID_CODE if the given name 2711b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * does not match any property. 2712b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2713b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 2714b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.4 2715b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2716b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UProperty U_EXPORT2 2717b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getPropertyEnum(const char* alias); 2718b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2719b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2720b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Return the Unicode name for a given property value, as given in the 2721b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode database file PropertyValueAliases.txt. 2722b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2723b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: Some of the names in PropertyValueAliases.txt can only be 2724b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * retrieved using UCHAR_GENERAL_CATEGORY_MASK, not 2725b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCHAR_GENERAL_CATEGORY. These include: "C" / "Other", "L" / 2726b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Letter", "LC" / "Cased_Letter", "M" / "Mark", "N" / "Number", "P" 2727b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * / "Punctuation", "S" / "Symbol", and "Z" / "Separator". 2728b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2729b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param property UProperty selector constant. 2730b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 2731b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 2732b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 2733b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If out of range, NULL is returned. 2734b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2735b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param value selector for a value for the given property. If out 2736b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * of range, NULL is returned. In general, valid values range 2737b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * from 0 up to some maximum. There are a few exceptions: 2738b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (1.) UCHAR_BLOCK values begin at the non-zero value 2739b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UBLOCK_BASIC_LATIN. (2.) UCHAR_CANONICAL_COMBINING_CLASS 2740b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * values are not contiguous and range from 0..240. (3.) 2741b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCHAR_GENERAL_CATEGORY_MASK values are not values of 2742b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCharCategory, but rather mask values produced by 2743b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_GET_GC_MASK(). This allows grouped categories such as 2744b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * [:L:] to be represented. Mask values range 2745b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * non-contiguously from 1..U_GC_P_MASK. 2746b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2747b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param nameChoice selector for which name to get. If out of range, 2748b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * NULL is returned. All values have a long name. Most have 2749b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * a short name, but some do not. Unicode allows for 2750b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * additional names; if present these will be returned by 2751b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_LONG_PROPERTY_NAME + i, where i=1, 2,... 2752b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2753b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return a pointer to the name, or NULL if either the 2754b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * property or the nameChoice is out of range. If a given 2755b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * nameChoice returns NULL, then all larger values of 2756b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * nameChoice will return NULL, with one exception: if NULL is 2757b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * returned for U_SHORT_PROPERTY_NAME, then 2758b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * U_LONG_PROPERTY_NAME (and higher) may still return a 2759b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * non-NULL value. The returned pointer is valid until 2760b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_cleanup() is called. 2761b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2762b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 2763b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UPropertyNameChoice 2764b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.4 2765b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2766b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE const char* U_EXPORT2 2767b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getPropertyValueName(UProperty property, 2768b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru int32_t value, 2769b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru UPropertyNameChoice nameChoice); 2770b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2771b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2772b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Return the property value integer for a given value name, as 2773b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * specified in the Unicode database file PropertyValueAliases.txt. 2774b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Short, long, and any other variants are recognized. 2775b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2776b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note: Some of the names in PropertyValueAliases.txt will only be 2777b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * recognized with UCHAR_GENERAL_CATEGORY_MASK, not 2778b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UCHAR_GENERAL_CATEGORY. These include: "C" / "Other", "L" / 2779b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Letter", "LC" / "Cased_Letter", "M" / "Mark", "N" / "Number", "P" 2780b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * / "Punctuation", "S" / "Symbol", and "Z" / "Separator". 2781b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2782b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param property UProperty selector constant. 2783b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 2784b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 2785b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 2786b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If out of range, UCHAR_INVALID_CODE is returned. 2787b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2788b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param alias the value name to be matched. The name is compared 2789b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * using "loose matching" as described in 2790b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * PropertyValueAliases.txt. 2791b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2792b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return a value integer or UCHAR_INVALID_CODE if the given name 2793b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * does not match any value of the given property, or if the 279450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * property is invalid. Note: UCHAR_GENERAL_CATEGORY_MASK values 2795b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * are not values of UCharCategory, but rather mask values 2796b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * produced by U_GET_GC_MASK(). This allows grouped 2797b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * categories such as [:L:] to be represented. 2798b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2799b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UProperty 2800b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.4 2801b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2802b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 2803b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getPropertyValueEnum(UProperty property, 2804b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru const char* alias); 2805b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2806b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2807b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character is permissible as the 2808b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * first character in an identifier according to Unicode 2809b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (The Unicode Standard, Version 3.0, chapter 5.16 Identifiers). 2810b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general categories "L" (letters) and "Nl" (letter numbers). 2811b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2812b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isUnicodeIdentifierStart(). 2813b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as UCHAR_ID_START 2814b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2815b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2816b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point may start an identifier 2817b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2818b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_ID_START 2819b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 2820b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDPart 2821b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2822b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2823b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2824b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isIDStart(UChar32 c); 2825b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2826b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2827b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character is permissible 2828b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in an identifier according to Java. 2829b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general categories "L" (letters), 2830b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Nl" (letter numbers), "Nd" (decimal digits), 2831b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * "Mc" and "Mn" (combining marks), "Pc" (connecting punctuation), and 2832b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_isIDIgnorable(c). 2833b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2834b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isUnicodeIdentifierPart(). 2835b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Almost the same as Unicode's ID_Continue (UCHAR_ID_CONTINUE) 2836b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * except that Unicode recommends to ignore Cf which is less than 2837b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * u_isIDIgnorable(c). 2838b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2839b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2840b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point may occur in an identifier according to Java 2841b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2842b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_ID_CONTINUE 2843b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDStart 2844b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDIgnorable 2845b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2846b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2847b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2848b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isIDPart(UChar32 c); 2849b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2850b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2851b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character should be regarded 2852b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as an ignorable character in an identifier, 2853b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * according to Java. 2854b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * True for characters with general category "Cf" (format controls) as well as 2855b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * non-whitespace ISO controls 285650294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * (U+0000..U+0008, U+000E..U+001B, U+007F..U+009F). 2857b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 285850294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho * Same as java.lang.Character.isIdentifierIgnorable(). 2859b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2860b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Note that Unicode just recommends to ignore Cf (format controls). 2861b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2862b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2863b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point is ignorable in identifiers according to Java 2864b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2865b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 2866b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDStart 2867b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDPart 2868b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2869b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2870b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2871b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isIDIgnorable(UChar32 c); 2872b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2873b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2874b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character is permissible as the 2875b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * first character in a Java identifier. 2876b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to u_isIDStart(c), true for characters with 2877b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * general categories "Sc" (currency symbols) and "Pc" (connecting punctuation). 2878b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2879b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isJavaIdentifierStart(). 2880b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2881b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2882b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point may start a Java identifier 2883b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2884b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isJavaIDPart 2885b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 2886b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDStart 2887b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2888b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2889b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2890b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isJavaIDStart(UChar32 c); 2891b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2892b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2893b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines if the specified character is permissible 2894b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in a Java identifier. 2895b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In addition to u_isIDPart(c), true for characters with 2896b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * general category "Sc" (currency symbols). 2897b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2898b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.isJavaIdentifierPart(). 2899b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2900b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be tested 2901b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return TRUE if the code point may occur in a Java identifier 2902b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2903b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDIgnorable 2904b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isJavaIDStart 2905b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isalpha 2906b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 2907b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isIDPart 2908b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2909b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2910b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UBool U_EXPORT2 2911b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_isJavaIDPart(UChar32 c); 2912b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2913b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2914b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The given character is mapped to its lowercase equivalent according to 2915b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UnicodeData.txt; if the character has no lowercase equivalent, the character 2916b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * itself is returned. 2917b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2918b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.toLowerCase(). 2919b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2920b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This function only returns the simple, single-code point case mapping. 2921b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings should be used whenever possible because they produce 2922b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * better results by working on whole strings. 2923b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * They take into account the string context and the language and can map 2924b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to a result string with a different length as appropriate. 2925b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings are applied by the string case mapping functions, 2926b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * see ustring.h and the UnicodeString class. 2927b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See also the User Guide chapter on C/POSIX migration: 2928b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * http://icu-project.org/userguide/posix.html#case_mappings 2929b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2930b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be mapped 2931b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the Simple_Lowercase_Mapping of the code point, if any; 2932b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * otherwise the code point itself. 2933b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2934b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2935b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 2936b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_tolower(UChar32 c); 2937b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2938b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2939b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The given character is mapped to its uppercase equivalent according to UnicodeData.txt; 2940b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * if the character has no uppercase equivalent, the character itself is 2941b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * returned. 2942b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2943b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.toUpperCase(). 2944b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2945b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This function only returns the simple, single-code point case mapping. 2946b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings should be used whenever possible because they produce 2947b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * better results by working on whole strings. 2948b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * They take into account the string context and the language and can map 2949b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to a result string with a different length as appropriate. 2950b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings are applied by the string case mapping functions, 2951b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * see ustring.h and the UnicodeString class. 2952b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See also the User Guide chapter on C/POSIX migration: 2953b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * http://icu-project.org/userguide/posix.html#case_mappings 2954b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2955b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be mapped 2956b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the Simple_Uppercase_Mapping of the code point, if any; 2957b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * otherwise the code point itself. 2958b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2959b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2960b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 2961b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_toupper(UChar32 c); 2962b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2963b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2964b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The given character is mapped to its titlecase equivalent 2965b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * according to UnicodeData.txt; 2966b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * if none is defined, the character itself is returned. 2967b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2968b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.toTitleCase(). 2969b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2970b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This function only returns the simple, single-code point case mapping. 2971b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings should be used whenever possible because they produce 2972b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * better results by working on whole strings. 2973b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * They take into account the string context and the language and can map 2974b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to a result string with a different length as appropriate. 2975b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings are applied by the string case mapping functions, 2976b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * see ustring.h and the UnicodeString class. 2977b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See also the User Guide chapter on C/POSIX migration: 2978b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * http://icu-project.org/userguide/posix.html#case_mappings 2979b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2980b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be mapped 2981b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the Simple_Titlecase_Mapping of the code point, if any; 2982b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * otherwise the code point itself. 2983b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 2984b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 2985b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 2986b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_totitle(UChar32 c); 2987b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2988b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** Option value for case folding: use default mappings defined in CaseFolding.txt. @stable ICU 2.0 */ 2989b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_FOLD_CASE_DEFAULT 0 2990b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 2991b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 2992b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Option value for case folding: 2993b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2994b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Use the modified set of mappings provided in CaseFolding.txt to handle dotted I 2995b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and dotless i appropriately for Turkic languages (tr, az). 2996b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 2997b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Before Unicode 3.2, CaseFolding.txt contains mappings marked with 'I' that 2998b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * are to be included for default mappings and 2999b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * excluded for the Turkic-specific mappings. 3000b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3001b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Unicode 3.2 CaseFolding.txt instead contains mappings marked with 'T' that 3002b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * are to be excluded for default mappings and 3003b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * included for the Turkic-specific mappings. 3004b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3005b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 3006b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3007b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#define U_FOLD_CASE_EXCLUDE_SPECIAL_I 1 3008b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3009b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3010b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The given character is mapped to its case folding equivalent according to 3011b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * UnicodeData.txt and CaseFolding.txt; 3012b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * if the character has no case folding equivalent, the character 3013b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * itself is returned. 3014b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3015b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This function only returns the simple, single-code point case mapping. 3016b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings should be used whenever possible because they produce 3017b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * better results by working on whole strings. 3018b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * They take into account the string context and the language and can map 3019b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * to a result string with a different length as appropriate. 3020b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Full case mappings are applied by the string case mapping functions, 3021b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * see ustring.h and the UnicodeString class. 3022b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See also the User Guide chapter on C/POSIX migration: 3023b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * http://icu-project.org/userguide/posix.html#case_mappings 3024b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3025b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c the code point to be mapped 3026b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param options Either U_FOLD_CASE_DEFAULT or U_FOLD_CASE_EXCLUDE_SPECIAL_I 3027b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the Simple_Case_Folding of the code point, if any; 3028b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * otherwise the code point itself. 3029b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 3030b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3031b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 3032b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_foldCase(UChar32 c, uint32_t options); 3033b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3034b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3035b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Returns the decimal digit value of the code point in the 3036b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * specified radix. 3037b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3038b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the radix is not in the range <code>2<=radix<=36</code> or if the 3039b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * value of <code>c</code> is not a valid digit in the specified 3040b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * radix, <code>-1</code> is returned. A character is a valid digit 3041b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * if at least one of the following is true: 3042b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <ul> 3043b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <li>The character has a decimal digit value. 3044b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Such characters have the general category "Nd" (decimal digit numbers) 3045b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * and a Numeric_Type of Decimal. 3046b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In this case the value is the character's decimal digit value.</li> 3047b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <li>The character is one of the uppercase Latin letters 3048b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <code>'A'</code> through <code>'Z'</code>. 3049b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In this case the value is <code>c-'A'+10</code>.</li> 3050b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <li>The character is one of the lowercase Latin letters 3051b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <code>'a'</code> through <code>'z'</code>. 3052b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * In this case the value is <code>ch-'a'+10</code>.</li> 3053b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <li>Latin letters from both the ASCII range (0061..007A, 0041..005A) 3054b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * as well as from the Fullwidth ASCII range (FF41..FF5A, FF21..FF3A) 3055b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * are recognized.</li> 3056b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * </ul> 3057b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3058b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.digit(). 3059b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3060b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param ch the code point to be tested. 3061b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param radix the radix. 3062b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the numeric value represented by the character in the 3063b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * specified radix, 3064b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or -1 if there is no value or if the value exceeds the radix. 3065b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3066b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see UCHAR_NUMERIC_TYPE 3067b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_forDigit 3068b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charDigitValue 3069b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 3070b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 3071b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3072b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 3073b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_digit(UChar32 ch, int8_t radix); 3074b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3075b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3076b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Determines the character representation for a specific digit in 3077b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the specified radix. If the value of <code>radix</code> is not a 3078b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * valid radix, or the value of <code>digit</code> is not a valid 3079b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * digit in the specified radix, the null character 3080b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * (<code>U+0000</code>) is returned. 3081b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <p> 3082b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The <code>radix</code> argument is valid if it is greater than or 3083b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * equal to 2 and less than or equal to 36. 3084b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The <code>digit</code> argument is valid if 3085b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <code>0 <= digit < radix</code>. 3086b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <p> 3087b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the digit is less than 10, then 3088b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <code>'0' + digit</code> is returned. Otherwise, the value 3089b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * <code>'a' + digit - 10</code> is returned. 3090b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3091b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Same as java.lang.Character.forDigit(). 3092b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3093b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param digit the number to convert to a character. 3094b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param radix the radix. 3095b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return the <code>char</code> representation of the specified digit 3096b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * in the specified radix. 3097b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3098b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_digit 3099b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_charDigitValue 3100b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @see u_isdigit 3101b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 3102b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3103b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE UChar32 U_EXPORT2 3104b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_forDigit(int32_t digit, int8_t radix); 3105b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3106b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3107b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the "age" of the code point. 3108b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The "age" is the Unicode version when the code point was first 3109b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * designated (as a non-character or for Private Use) 3110b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or assigned a character. 3111b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * This can be useful to avoid emitting code points to receiving 3112b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * processes that do not accept newer characters. 3113b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The data is from the UCD file DerivedAge.txt. 3114b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3115b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c The code point. 3116b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param versionArray The Unicode version number array, to be filled in. 3117b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3118b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.1 3119b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3120b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE void U_EXPORT2 3121b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_charAge(UChar32 c, UVersionInfo versionArray); 3122b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3123b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3124b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Gets the Unicode version information. 3125b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The version array is filled in with the version information 3126b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * for the Unicode standard that is currently used by ICU. 3127b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * For example, Unicode version 3.1.1 is represented as an array with 3128b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the values { 3, 1, 1, 0 }. 3129b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3130b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param versionArray an output array that will be filled in with 3131b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * the Unicode version number 3132b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.0 3133b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3134b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE void U_EXPORT2 3135b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getUnicodeVersion(UVersionInfo versionArray); 3136b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 313750294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#if !UCONFIG_NO_NORMALIZATION 3138b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/** 3139b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * Get the FC_NFKC_Closure property string for a character. 3140b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * See Unicode Standard Annex #15 for details, search for "FC_NFKC_Closure" 3141b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * or for "FNC": http://www.unicode.org/reports/tr15/ 3142b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3143b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param c The character (code point) for which to get the FC_NFKC_Closure string. 3144b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * It must be <code>0<=c<=0x10ffff</code>. 3145b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param dest Destination address for copying the string. 3146b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The string will be zero-terminated if possible. 3147b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If there is no FC_NFKC_Closure string, 3148b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * then the buffer will be set to the empty string. 3149b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param destCapacity <code>==sizeof(dest)</code> 3150b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @param pErrorCode Pointer to a UErrorCode variable. 3151b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @return The length of the string, or 0 if there is no FC_NFKC_Closure string for this character. 3152b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * If the destCapacity is less than or equal to the length, then the buffer 3153b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * contains the truncated name and the returned length indicates the full 3154b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * length of the name. 3155b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * The length does not include the zero-termination. 3156b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * 3157b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru * @stable ICU 2.2 3158b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru */ 3159b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_STABLE int32_t U_EXPORT2 3160b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queruu_getFC_NFKC_Closure(UChar32 c, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode); 3161b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 316250294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho#endif 316350294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 316450294ead5e5d23f5bbfed76e00e6b510bd41eee1claireho 3165b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste QueruU_CDECL_END 3166b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru 3167b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru#endif /*_UCHAR*/ 3168b13da9df870a61b11249bf741347908dbea0edd8Jean-Baptiste Queru/*eof*/ 3169