16f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/* 26f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org********************************************************************** 36f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Copyright (C) 1997-2013, International Business Machines 46f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Corporation and others. All Rights Reserved. 56f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org********************************************************************** 66f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 76f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* File UCHAR.H 86f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 96f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Modification History: 106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Date Name Description 126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 04/02/97 aliu Creation. 136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 03/29/99 helena Updated for C APIs. 146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 4/15/99 Madhu Updated for C Implementation and Javadoc 156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 5/20/99 Madhu Added the function u_getVersion() 166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 8/19/1999 srl Upgraded scripts to Unicode 3.0 176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 8/27/1999 schererm UCharDirection constants: U_... 186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 11/11/1999 weiv added u_isalnum(), cleaned comments 196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 01/11/2000 helena Renamed u_getVersion to u_getUnicodeVersion(). 206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org****************************************************************************** 216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org*/ 226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef UCHAR_H 246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define UCHAR_H 256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#include "unicode/utypes.h" 276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_CDECL_BEGIN 296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*==========================================================================*/ 316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/* Unicode version number */ 326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*==========================================================================*/ 336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode version number, default for the current ICU version. 356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The actual Unicode Character Database (UCD) data is stored in uprops.dat 366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and may be generated from UCD files from a different Unicode version. 376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Call u_getUnicodeVersion to get the actual Unicode version of the data. 386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_UNICODE_VERSION "6.3" 436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * \file 466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * \brief C API: Unicode Properties 476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This C API provides low-level access to the Unicode Character Database. 496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to raw property values, some convenience functions calculate 506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * derived properties, for example for Java-style programming. 516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode assigns each code point (not just assigned character) values for 536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * many properties. 546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Most of them are simple boolean flags, or constants from a small enumerated list. 556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For some properties, values are strings or other relatively more complex types. 566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For more information see 586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "About the Unicode Character Database" (http://www.unicode.org/ucd/) 596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and the ICU User Guide chapter on Properties (http://icu-project.org/userguide/properties.html). 606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Many functions are designed to match java.lang.Character functions. 626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the individual function documentation, 636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and see the JDK 1.4 java.lang.Character documentation 646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * at http://java.sun.com/j2se/1.4/docs/api/java/lang/Character.html 656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * There are also functions that provide easy migration from C/POSIX functions 676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * like isblank(). Their use is generally discouraged because the C/POSIX 686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * standards do not define their semantics beyond the ASCII range, which means 696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * that different implementations exhibit very different behavior. 706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Instead, Unicode properties should be used directly. 716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * There are also only a few, broad C/POSIX character classes, and they tend 736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to be used for conflicting purposes. For example, the "isalpha()" class 746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * is sometimes used to determine word boundaries, while a more sophisticated 756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * approach would at least distinguish initial letters from continuation 766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * characters (the latter including combining marks). 776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (In ICU, BreakIterator is the most sophisticated API for word boundaries.) 786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Another example: There is no "istitle()" class for titlecase characters. 796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * ICU 3.4 and later provides API access for all twelve C/POSIX character classes. 816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * ICU implements them according to the Standard Recommendations in 826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Annex C: Compatibility Properties of UTS #18 Unicode Regular Expressions 836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (http://www.unicode.org/reports/tr18/#Compatibility_Properties). 846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * API access for C/POSIX character classes is as follows: 866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - alpha: u_isUAlphabetic(c) or u_hasBinaryProperty(c, UCHAR_ALPHABETIC) 876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - lower: u_isULowercase(c) or u_hasBinaryProperty(c, UCHAR_LOWERCASE) 886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - upper: u_isUUppercase(c) or u_hasBinaryProperty(c, UCHAR_UPPERCASE) 896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - punct: u_ispunct(c) 906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - digit: u_isdigit(c) or u_charType(c)==U_DECIMAL_DIGIT_NUMBER 916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - xdigit: u_isxdigit(c) or u_hasBinaryProperty(c, UCHAR_POSIX_XDIGIT) 926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - alnum: u_hasBinaryProperty(c, UCHAR_POSIX_ALNUM) 936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - space: u_isUWhiteSpace(c) or u_hasBinaryProperty(c, UCHAR_WHITE_SPACE) 946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - blank: u_isblank(c) or u_hasBinaryProperty(c, UCHAR_POSIX_BLANK) 956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - cntrl: u_charType(c)==U_CONTROL_CHAR 966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - graph: u_hasBinaryProperty(c, UCHAR_POSIX_GRAPH) 976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - print: u_hasBinaryProperty(c, UCHAR_POSIX_PRINT) 986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: Some of the u_isxyz() functions in uchar.h predate, and do not match, 1006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the Standard Recommendations in UTS #18. Instead, they match Java 1016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * functions according to their API documentation. 1026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * \htmlonly 1046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The C/POSIX character classes are also available in UnicodeSet patterns, 1056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * using patterns like [:graph:] or \p{graph}. 1066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * \endhtmlonly 1076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions. 1096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Comparison: 1106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - u_isUWhiteSpace=UCHAR_WHITE_SPACE: Unicode White_Space property; 1116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * most of general categories "Z" (separators) + most whitespace ISO controls 1126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (including no-break spaces, but excluding IS1..IS4 and ZWSP) 1136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - u_isWhitespace: Java isWhitespace; Z + whitespace ISO controls but excluding no-break spaces 1146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - u_isJavaSpaceChar: Java isSpaceChar; just Z (including no-break spaces) 1156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - u_isspace: Z + whitespace ISO controls (including no-break spaces) 1166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - u_isblank: "horizontal spaces" = TAB + Zs - ZWSP 1176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Constants. 1216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** The lowest Unicode code point value. Code points are non-negative. @stable ICU 2.0 */ 1246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define UCHAR_MIN_VALUE 0 1256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The highest Unicode code point value (scalar value) according to 1286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The Unicode Standard. This is a 21-bit value (20.1 bits, rounded up). 1296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For a single character, UChar32 is a simple type that can hold any code point value. 1306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UChar32 1326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 1336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define UCHAR_MAX_VALUE 0x10ffff 1356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get a single-bit bit set (a flag) from a bit number 0..31. 1386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 1396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_MASK(x) ((uint32_t)1<<(x)) 1416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Selection constants for Unicode properties. 1446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * These constants are used in functions like u_hasBinaryProperty to select 1456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * one of the Unicode properties. 1466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The properties APIs are intended to reflect Unicode properties as defined 1486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 1496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For details about the properties see http://www.unicode.org/ucd/ . 1506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For names of Unicode properties see the UCD file PropertyAliases.txt. 1516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Important: If ICU is built with UCD files from Unicode versions below, e.g., 3.2, 1536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * then properties marked with "new in Unicode 3.2" are not or not fully available. 1546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check u_getUnicodeVersion to be sure. 1556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 1566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 1576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyValue 1586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 1596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 1606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UProperty { 1626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 1636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UProperty constants are parsed by preparseucd.py. 1646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 1656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_<Unicode property name>=<integer>, 1666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* Note: Place UCHAR_ALPHABETIC before UCHAR_BINARY_START so that 1696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org debuggers display UCHAR_ALPHABETIC as the symbolic name for 0, 1706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org rather than UCHAR_BINARY_START. Likewise for other *_START 1716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org identifiers. */ 1726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Alphabetic. Same as u_isUAlphabetic, different from u_isalpha. 1746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Lu+Ll+Lt+Lm+Lo+Nl+Other_Alphabetic @stable ICU 2.1 */ 1756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_ALPHABETIC=0, 1766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for binary Unicode properties. @stable ICU 2.1 */ 1776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BINARY_START=UCHAR_ALPHABETIC, 1786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property ASCII_Hex_Digit. 0-9 A-F a-f @stable ICU 2.1 */ 1796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_ASCII_HEX_DIGIT=1, 1806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Bidi_Control. 1816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Format controls which have specific functions 1826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org in the Bidi Algorithm. @stable ICU 2.1 */ 1836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_CONTROL=2, 1846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Bidi_Mirrored. 1856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters that may change display in RTL text. 1866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as u_isMirrored. 1876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See Bidi Algorithm, UTR 9. @stable ICU 2.1 */ 1886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_MIRRORED=3, 1896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Dash. Variations of dashes. @stable ICU 2.1 */ 1906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DASH=4, 1916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Default_Ignorable_Code_Point (new in Unicode 3.2). 1926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ignorable in most processing. 1936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org <2060..206F, FFF0..FFFB, E0000..E0FFF>+Other_Default_Ignorable_Code_Point+(Cf+Cc+Cs-White_Space) @stable ICU 2.1 */ 1946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DEFAULT_IGNORABLE_CODE_POINT=5, 1956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Deprecated (new in Unicode 3.2). 1966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org The usage of deprecated characters is strongly discouraged. @stable ICU 2.1 */ 1976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DEPRECATED=6, 1986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Diacritic. Characters that linguistically modify 1996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org the meaning of another character to which they apply. @stable ICU 2.1 */ 2006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DIACRITIC=7, 2016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Extender. 2026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Extend the value or shape of a preceding alphabetic character, 2036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org e.g., length and iteration marks. @stable ICU 2.1 */ 2046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_EXTENDER=8, 2056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Full_Composition_Exclusion. 2066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org CompositionExclusions.txt+Singleton Decompositions+ 2076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Non-Starter Decompositions. @stable ICU 2.1 */ 2086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_FULL_COMPOSITION_EXCLUSION=9, 2096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Grapheme_Base (new in Unicode 3.2). 2106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of grapheme cluster boundaries. 2116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org [0..10FFFF]-Cc-Cf-Cs-Co-Cn-Zl-Zp-Grapheme_Link-Grapheme_Extend-CGJ @stable ICU 2.1 */ 2126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GRAPHEME_BASE=10, 2136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Grapheme_Extend (new in Unicode 3.2). 2146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of grapheme cluster boundaries. 2156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Me+Mn+Mc+Other_Grapheme_Extend-Grapheme_Link-CGJ @stable ICU 2.1 */ 2166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GRAPHEME_EXTEND=11, 2176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Grapheme_Link (new in Unicode 3.2). 2186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of grapheme cluster boundaries. @stable ICU 2.1 */ 2196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GRAPHEME_LINK=12, 2206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Hex_Digit. 2216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters commonly used for hexadecimal numbers. @stable ICU 2.1 */ 2226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_HEX_DIGIT=13, 2236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Hyphen. Dashes used to mark connections 2246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org between pieces of words, plus the Katakana middle dot. @stable ICU 2.1 */ 2256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_HYPHEN=14, 2266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property ID_Continue. 2276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters that can continue an identifier. 2286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org DerivedCoreProperties.txt also says "NOTE: Cf characters should be filtered out." 2296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ID_Start+Mn+Mc+Nd+Pc @stable ICU 2.1 */ 2306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_ID_CONTINUE=15, 2316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property ID_Start. 2326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters that can start an identifier. 2336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Lu+Ll+Lt+Lm+Lo+Nl @stable ICU 2.1 */ 2346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_ID_START=16, 2356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Ideographic. 2366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org CJKV ideographs. @stable ICU 2.1 */ 2376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_IDEOGRAPHIC=17, 2386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property IDS_Binary_Operator (new in Unicode 3.2). 2396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of 2406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ideographic Description Sequences. @stable ICU 2.1 */ 2416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_IDS_BINARY_OPERATOR=18, 2426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property IDS_Trinary_Operator (new in Unicode 3.2). 2436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of 2446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ideographic Description Sequences. @stable ICU 2.1 */ 2456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_IDS_TRINARY_OPERATOR=19, 2466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Join_Control. 2476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Format controls for cursive joining and ligation. @stable ICU 2.1 */ 2486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_JOIN_CONTROL=20, 2496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Logical_Order_Exception (new in Unicode 3.2). 2506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters that do not use logical order and 2516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org require special handling in most processing. @stable ICU 2.1 */ 2526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_LOGICAL_ORDER_EXCEPTION=21, 2536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Lowercase. Same as u_isULowercase, different from u_islower. 2546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ll+Other_Lowercase @stable ICU 2.1 */ 2556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_LOWERCASE=22, 2566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Math. Sm+Other_Math @stable ICU 2.1 */ 2576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_MATH=23, 2586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Noncharacter_Code_Point. 2596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Code points that are explicitly defined as illegal 2606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org for the encoding of characters. @stable ICU 2.1 */ 2616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NONCHARACTER_CODE_POINT=24, 2626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Quotation_Mark. @stable ICU 2.1 */ 2636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_QUOTATION_MARK=25, 2646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Radical (new in Unicode 3.2). 2656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of 2666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ideographic Description Sequences. @stable ICU 2.1 */ 2676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_RADICAL=26, 2686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Soft_Dotted (new in Unicode 3.2). 2696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Characters with a "soft dot", like i or j. 2706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org An accent placed on these characters causes 2716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org the dot to disappear. @stable ICU 2.1 */ 2726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SOFT_DOTTED=27, 2736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Terminal_Punctuation. 2746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Punctuation characters that generally mark 2756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org the end of textual units. @stable ICU 2.1 */ 2766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_TERMINAL_PUNCTUATION=28, 2776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Unified_Ideograph (new in Unicode 3.2). 2786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For programmatic determination of 2796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Ideographic Description Sequences. @stable ICU 2.1 */ 2806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_UNIFIED_IDEOGRAPH=29, 2816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Uppercase. Same as u_isUUppercase, different from u_isupper. 2826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Lu+Other_Uppercase @stable ICU 2.1 */ 2836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_UPPERCASE=30, 2846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property White_Space. 2856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as u_isUWhiteSpace, different from u_isspace and u_isWhitespace. 2866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Space characters+TAB+CR+LF-ZWSP-ZWNBSP @stable ICU 2.1 */ 2876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_WHITE_SPACE=31, 2886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property XID_Continue. 2896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ID_Continue modified to allow closure under 2906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org normalization forms NFKC and NFKD. @stable ICU 2.1 */ 2916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_XID_CONTINUE=32, 2926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property XID_Start. ID_Start modified to allow 2936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org closure under normalization forms NFKC and NFKD. @stable ICU 2.1 */ 2946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_XID_START=33, 2956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Case_Sensitive. Either the source of a case 2966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org mapping or _in_ the target of a case mapping. Not the same as 2976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org the general category Cased_Letter. @stable ICU 2.6 */ 2986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CASE_SENSITIVE=34, 2996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property STerm (new in Unicode 4.0.1). 3006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Sentence Terminal. Used in UAX #29: Text Boundaries 3016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr29/) 3026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_S_TERM=35, 3046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Variation_Selector (new in Unicode 4.0.1). 3056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Indicates all those characters that qualify as Variation Selectors. 3066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For details on the behavior of these characters, 3076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org see StandardizedVariants.html and 15.6 Variation Selectors. 3086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_VARIATION_SELECTOR=36, 3106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property NFD_Inert. 3116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for characters that are inert under NFD, 3126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org i.e., they do not interact with adjacent characters. 3136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the documentation for the Normalizer2 class and the 3146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Normalizer2::isInert() method. 3156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFD_INERT=37, 3176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property NFKD_Inert. 3186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for characters that are inert under NFKD, 3196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org i.e., they do not interact with adjacent characters. 3206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the documentation for the Normalizer2 class and the 3216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Normalizer2::isInert() method. 3226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFKD_INERT=38, 3246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property NFC_Inert. 3256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for characters that are inert under NFC, 3266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org i.e., they do not interact with adjacent characters. 3276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the documentation for the Normalizer2 class and the 3286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Normalizer2::isInert() method. 3296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFC_INERT=39, 3316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property NFKC_Inert. 3326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for characters that are inert under NFKC, 3336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org i.e., they do not interact with adjacent characters. 3346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the documentation for the Normalizer2 class and the 3356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Normalizer2::isInert() method. 3366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFKC_INERT=40, 3386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary Property Segment_Starter. 3396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for characters that are starters in terms of 3406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Unicode normalization and combining character sequences. 3416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org They have ccc=0 and do not occur in non-initial position of the 3426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org canonical decomposition of any character 3436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (like a-umlaut in NFD and a Jamo T in an NFD(Hangul LVT)). 3446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU uses this property for segmenting a string for generating a set of 3456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org canonically equivalent strings, e.g. for canonical closure while 3466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org processing collation tailoring rules. 3476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.0 */ 3486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SEGMENT_STARTER=41, 3496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Pattern_Syntax (new in Unicode 4.1). 3506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See UAX #31 Identifier and Pattern Syntax 3516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr31/) 3526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_PATTERN_SYNTAX=42, 3546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Pattern_White_Space (new in Unicode 4.1). 3556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See UAX #31 Identifier and Pattern Syntax 3566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr31/) 3576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_PATTERN_WHITE_SPACE=43, 3596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property alnum (a C/POSIX character class). 3606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Implemented according to the UTS #18 Annex C Standard Recommendation. 3616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the uchar.h file documentation. 3626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_POSIX_ALNUM=44, 3646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property blank (a C/POSIX character class). 3656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Implemented according to the UTS #18 Annex C Standard Recommendation. 3666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the uchar.h file documentation. 3676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_POSIX_BLANK=45, 3696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property graph (a C/POSIX character class). 3706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Implemented according to the UTS #18 Annex C Standard Recommendation. 3716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the uchar.h file documentation. 3726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_POSIX_GRAPH=46, 3746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property print (a C/POSIX character class). 3756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Implemented according to the UTS #18 Annex C Standard Recommendation. 3766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the uchar.h file documentation. 3776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_POSIX_PRINT=47, 3796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property xdigit (a C/POSIX character class). 3806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Implemented according to the UTS #18 Annex C Standard Recommendation. 3816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See the uchar.h file documentation. 3826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 3.4 */ 3836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_POSIX_XDIGIT=48, 3846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Cased. For Lowercase, Uppercase and Titlecase characters. @stable ICU 4.4 */ 3856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CASED=49, 3866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Case_Ignorable. Used in context-sensitive case mappings. @stable ICU 4.4 */ 3876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CASE_IGNORABLE=50, 3886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_Lowercased. @stable ICU 4.4 */ 3896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_LOWERCASED=51, 3906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_Uppercased. @stable ICU 4.4 */ 3916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_UPPERCASED=52, 3926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_Titlecased. @stable ICU 4.4 */ 3936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_TITLECASED=53, 3946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_Casefolded. @stable ICU 4.4 */ 3956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_CASEFOLDED=54, 3966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_Casemapped. @stable ICU 4.4 */ 3976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_CASEMAPPED=55, 3986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Binary property Changes_When_NFKC_Casefolded. @stable ICU 4.4 */ 3996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CHANGES_WHEN_NFKC_CASEFOLDED=56, 4006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for binary Unicode properties. @stable ICU 2.1 */ 4016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BINARY_LIMIT=57, 4026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 4036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Bidi_Class. 4046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as u_charDirection, returns UCharDirection values. @stable ICU 2.2 */ 4056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_CLASS=0x1000, 4066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for enumerated/integer Unicode properties. @stable ICU 2.2 */ 4076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_INT_START=UCHAR_BIDI_CLASS, 4086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Block. 4096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as ublock_getCode, returns UBlockCode values. @stable ICU 2.2 */ 4106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BLOCK=0x1001, 4116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Canonical_Combining_Class. 4126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as u_getCombiningClass, returns 8-bit numeric values. @stable ICU 2.2 */ 4136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CANONICAL_COMBINING_CLASS=0x1002, 4146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Decomposition_Type. 4156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UDecompositionType values. @stable ICU 2.2 */ 4166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DECOMPOSITION_TYPE=0x1003, 4176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property East_Asian_Width. 4186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org See http://www.unicode.org/reports/tr11/ 4196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UEastAsianWidth values. @stable ICU 2.2 */ 4206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_EAST_ASIAN_WIDTH=0x1004, 4216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property General_Category. 4226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as u_charType, returns UCharCategory values. @stable ICU 2.2 */ 4236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GENERAL_CATEGORY=0x1005, 4246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Joining_Group. 4256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UJoiningGroup values. @stable ICU 2.2 */ 4266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_JOINING_GROUP=0x1006, 4276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Joining_Type. 4286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UJoiningType values. @stable ICU 2.2 */ 4296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_JOINING_TYPE=0x1007, 4306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Line_Break. 4316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns ULineBreak values. @stable ICU 2.2 */ 4326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_LINE_BREAK=0x1008, 4336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Numeric_Type. 4346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UNumericType values. @stable ICU 2.2 */ 4356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NUMERIC_TYPE=0x1009, 4366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Script. 4376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Same as uscript_getScript, returns UScriptCode values. @stable ICU 2.2 */ 4386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SCRIPT=0x100A, 4396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Hangul_Syllable_Type, new in Unicode 4. 4406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UHangulSyllableType values. @stable ICU 2.6 */ 4416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_HANGUL_SYLLABLE_TYPE=0x100B, 4426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property NFD_Quick_Check. 4436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 4446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFD_QUICK_CHECK=0x100C, 4456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property NFKD_Quick_Check. 4466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 4476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFKD_QUICK_CHECK=0x100D, 4486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property NFC_Quick_Check. 4496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 4506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFC_QUICK_CHECK=0x100E, 4516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property NFKC_Quick_Check. 4526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UNormalizationCheckResult values. @stable ICU 3.0 */ 4536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NFKC_QUICK_CHECK=0x100F, 4546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Lead_Canonical_Combining_Class. 4556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for the ccc of the first code point 4566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org of the decomposition, or lccc(c)=ccc(NFD(c)[0]). 4576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Useful for checking for canonically ordered text; 4586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org see UNORM_FCD and http://www.unicode.org/notes/tn5/#FCD . 4596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns 8-bit numeric values like UCHAR_CANONICAL_COMBINING_CLASS. @stable ICU 3.0 */ 4606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_LEAD_CANONICAL_COMBINING_CLASS=0x1010, 4616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Trail_Canonical_Combining_Class. 4626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ICU-specific property for the ccc of the last code point 4636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org of the decomposition, or tccc(c)=ccc(NFD(c)[last]). 4646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Useful for checking for canonically ordered text; 4656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org see UNORM_FCD and http://www.unicode.org/notes/tn5/#FCD . 4666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns 8-bit numeric values like UCHAR_CANONICAL_COMBINING_CLASS. @stable ICU 3.0 */ 4676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_TRAIL_CANONICAL_COMBINING_CLASS=0x1011, 4686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Grapheme_Cluster_Break (new in Unicode 4.1). 4696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Used in UAX #29: Text Boundaries 4706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr29/) 4716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UGraphemeClusterBreak values. @stable ICU 3.4 */ 4726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GRAPHEME_CLUSTER_BREAK=0x1012, 4736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Sentence_Break (new in Unicode 4.1). 4746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Used in UAX #29: Text Boundaries 4756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr29/) 4766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns USentenceBreak values. @stable ICU 3.4 */ 4776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SENTENCE_BREAK=0x1013, 4786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Word_Break (new in Unicode 4.1). 4796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Used in UAX #29: Text Boundaries 4806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr29/) 4816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UWordBreakValues values. @stable ICU 3.4 */ 4826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_WORD_BREAK=0x1014, 4836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Enumerated property Bidi_Paired_Bracket_Type (new in Unicode 6.3). 4846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Used in UAX #9: Unicode Bidirectional Algorithm 4856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (http://www.unicode.org/reports/tr9/) 4866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Returns UBidiPairedBracketType values. @stable ICU 52 */ 4876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_PAIRED_BRACKET_TYPE=0x1015, 4886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for enumerated/integer Unicode properties. @stable ICU 2.2 */ 4896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_INT_LIMIT=0x1016, 4906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 4916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Bitmask property General_Category_Mask. 4926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org This is the General_Category property returned as a bit mask. 4936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org When used in u_getIntPropertyValue(c), same as U_MASK(u_charType(c)), 4946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org returns bit masks for UCharCategory values where exactly one bit is set. 4956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org When used with u_getPropertyValueName() and u_getPropertyValueEnum(), 4966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org a multi-bit mask is used for sets of categories like "Letters". 4976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Mask values should be cast to uint32_t. 4986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 2.4 */ 4996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_GENERAL_CATEGORY_MASK=0x2000, 5006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for bit-mask Unicode properties. @stable ICU 2.4 */ 5016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_MASK_START=UCHAR_GENERAL_CATEGORY_MASK, 5026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for bit-mask Unicode properties. @stable ICU 2.4 */ 5036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_MASK_LIMIT=0x2001, 5046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 5056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Double property Numeric_Value. 5066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_getNumericValue. @stable ICU 2.4 */ 5076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NUMERIC_VALUE=0x3000, 5086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for double Unicode properties. @stable ICU 2.4 */ 5096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DOUBLE_START=UCHAR_NUMERIC_VALUE, 5106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for double Unicode properties. @stable ICU 2.4 */ 5116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_DOUBLE_LIMIT=0x3001, 5126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 5136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Age. 5146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_charAge. @stable ICU 2.4 */ 5156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_AGE=0x4000, 5166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for string Unicode properties. @stable ICU 2.4 */ 5176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_STRING_START=UCHAR_AGE, 5186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Bidi_Mirroring_Glyph. 5196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_charMirror. @stable ICU 2.4 */ 5206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_MIRRORING_GLYPH=0x4001, 5216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Case_Folding. 5226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_strFoldCase in ustring.h. @stable ICU 2.4 */ 5236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_CASE_FOLDING=0x4002, 5246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef U_HIDE_DEPRECATED_API 5256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Deprecated string property ISO_Comment. 5266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_getISOComment. @deprecated ICU 49 */ 5276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_ISO_COMMENT=0x4003, 5286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif /* U_HIDE_DEPRECATED_API */ 5296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Lowercase_Mapping. 5306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_strToLower in ustring.h. @stable ICU 2.4 */ 5316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_LOWERCASE_MAPPING=0x4004, 5326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Name. 5336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_charName. @stable ICU 2.4 */ 5346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_NAME=0x4005, 5356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Simple_Case_Folding. 5366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_foldCase. @stable ICU 2.4 */ 5376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SIMPLE_CASE_FOLDING=0x4006, 5386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Simple_Lowercase_Mapping. 5396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_tolower. @stable ICU 2.4 */ 5406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SIMPLE_LOWERCASE_MAPPING=0x4007, 5416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Simple_Titlecase_Mapping. 5426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_totitle. @stable ICU 2.4 */ 5436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SIMPLE_TITLECASE_MAPPING=0x4008, 5446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Simple_Uppercase_Mapping. 5456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_toupper. @stable ICU 2.4 */ 5466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SIMPLE_UPPERCASE_MAPPING=0x4009, 5476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Titlecase_Mapping. 5486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_strToTitle in ustring.h. @stable ICU 2.4 */ 5496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_TITLECASE_MAPPING=0x400A, 5506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef U_HIDE_DEPRECATED_API 5516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Unicode_1_Name. 5526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org This property is of little practical value. 5536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Beginning with ICU 49, ICU APIs return an empty string for this property. 5546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_charName(U_UNICODE_10_CHAR_NAME). @deprecated ICU 49 */ 5556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_UNICODE_1_NAME=0x400B, 5566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif /* U_HIDE_DEPRECATED_API */ 5576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Uppercase_Mapping. 5586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_strToUpper in ustring.h. @stable ICU 2.4 */ 5596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_UPPERCASE_MAPPING=0x400C, 5606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** String property Bidi_Paired_Bracket (new in Unicode 6.3). 5616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to u_getBidiPairedBracket. @stable ICU 52 */ 5626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_BIDI_PAIRED_BRACKET=0x400D, 5636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for string Unicode properties. @stable ICU 2.4 */ 5646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_STRING_LIMIT=0x400E, 5656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 5666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Miscellaneous property Script_Extensions (new in Unicode 6.0). 5676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Some characters are commonly used in multiple scripts. 5686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org For more information, see UAX #24: http://www.unicode.org/reports/tr24/. 5696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org Corresponds to uscript_hasScript and uscript_getScriptExtensions in uscript.h. 5706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org @stable ICU 4.6 */ 5716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_SCRIPT_EXTENSIONS=0x7000, 5726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** First constant for Unicode properties with unusual value types. @stable ICU 4.6 */ 5736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_OTHER_PROPERTY_START=UCHAR_SCRIPT_EXTENSIONS, 5746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One more than the last constant for Unicode properties with unusual value types. 5756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 4.6 */ 5766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_OTHER_PROPERTY_LIMIT=0x7001, 5776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Represents a nonexistent or invalid property or property value. @stable ICU 2.4 */ 5786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCHAR_INVALID_CODE = -1 5796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UProperty; 5806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 5816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 5826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Data for enumerated Unicode general category types. 5836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See http://www.unicode.org/Public/UNIDATA/UnicodeData.html . 5846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 5856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 5866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UCharCategory 5876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org{ 5886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 5896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UCharCategory constants and their API comments are parsed by preparseucd.py. 5906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches pairs of lines like 5916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * / ** <Unicode 2-letter General_Category value> comment... * / 5926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_<[A-Z_]+> = <integer>, 5936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 5946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 5956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Non-category for unassigned and non-character code points. @stable ICU 2.0 */ 5966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_UNASSIGNED = 0, 5976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Cn "Other, Not Assigned (no characters in [UnicodeData.txt] have this property)" (same as U_UNASSIGNED!) @stable ICU 2.0 */ 5986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GENERAL_OTHER_TYPES = 0, 5996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Lu @stable ICU 2.0 */ 6006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_UPPERCASE_LETTER = 1, 6016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Ll @stable ICU 2.0 */ 6026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LOWERCASE_LETTER = 2, 6036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Lt @stable ICU 2.0 */ 6046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_TITLECASE_LETTER = 3, 6056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Lm @stable ICU 2.0 */ 6066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_MODIFIER_LETTER = 4, 6076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Lo @stable ICU 2.0 */ 6086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_OTHER_LETTER = 5, 6096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Mn @stable ICU 2.0 */ 6106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NON_SPACING_MARK = 6, 6116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Me @stable ICU 2.0 */ 6126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_ENCLOSING_MARK = 7, 6136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Mc @stable ICU 2.0 */ 6146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_COMBINING_SPACING_MARK = 8, 6156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Nd @stable ICU 2.0 */ 6166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DECIMAL_DIGIT_NUMBER = 9, 6176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Nl @stable ICU 2.0 */ 6186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LETTER_NUMBER = 10, 6196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** No @stable ICU 2.0 */ 6206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_OTHER_NUMBER = 11, 6216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Zs @stable ICU 2.0 */ 6226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SPACE_SEPARATOR = 12, 6236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Zl @stable ICU 2.0 */ 6246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LINE_SEPARATOR = 13, 6256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Zp @stable ICU 2.0 */ 6266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_PARAGRAPH_SEPARATOR = 14, 6276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Cc @stable ICU 2.0 */ 6286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CONTROL_CHAR = 15, 6296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Cf @stable ICU 2.0 */ 6306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_FORMAT_CHAR = 16, 6316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Co @stable ICU 2.0 */ 6326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_PRIVATE_USE_CHAR = 17, 6336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Cs @stable ICU 2.0 */ 6346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SURROGATE = 18, 6356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Pd @stable ICU 2.0 */ 6366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DASH_PUNCTUATION = 19, 6376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Ps @stable ICU 2.0 */ 6386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_START_PUNCTUATION = 20, 6396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Pe @stable ICU 2.0 */ 6406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_END_PUNCTUATION = 21, 6416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Pc @stable ICU 2.0 */ 6426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CONNECTOR_PUNCTUATION = 22, 6436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Po @stable ICU 2.0 */ 6446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_OTHER_PUNCTUATION = 23, 6456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Sm @stable ICU 2.0 */ 6466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_MATH_SYMBOL = 24, 6476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Sc @stable ICU 2.0 */ 6486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CURRENCY_SYMBOL = 25, 6496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Sk @stable ICU 2.0 */ 6506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_MODIFIER_SYMBOL = 26, 6516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** So @stable ICU 2.0 */ 6526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_OTHER_SYMBOL = 27, 6536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Pi @stable ICU 2.0 */ 6546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_INITIAL_PUNCTUATION = 28, 6556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Pf @stable ICU 2.0 */ 6566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_FINAL_PUNCTUATION = 29, 6576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** One higher than the last enum UCharCategory constant. @stable ICU 2.0 */ 6586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CHAR_CATEGORY_COUNT 6596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UCharCategory; 6606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 6616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 6626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_GC_XX_MASK constants are bit flags corresponding to Unicode 6636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * general category values. 6646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For each category, the nth bit is set if the numeric value of the 6656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * corresponding UCharCategory constant is n. 6666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 6676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * There are also some U_GC_Y_MASK constants for groups of general categories 6686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * like L for all letter categories. 6696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 6706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charType 6716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see U_GET_GC_MASK 6726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharCategory 6736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 6746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 6756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_CN_MASK U_MASK(U_GENERAL_OTHER_TYPES) 6766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 6776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LU_MASK U_MASK(U_UPPERCASE_LETTER) 6796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LL_MASK U_MASK(U_LOWERCASE_LETTER) 6816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LT_MASK U_MASK(U_TITLECASE_LETTER) 6836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LM_MASK U_MASK(U_MODIFIER_LETTER) 6856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LO_MASK U_MASK(U_OTHER_LETTER) 6876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 6886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_MN_MASK U_MASK(U_NON_SPACING_MARK) 6906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_ME_MASK U_MASK(U_ENCLOSING_MARK) 6926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_MC_MASK U_MASK(U_COMBINING_SPACING_MARK) 6946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 6956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_ND_MASK U_MASK(U_DECIMAL_DIGIT_NUMBER) 6976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 6986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_NL_MASK U_MASK(U_LETTER_NUMBER) 6996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_NO_MASK U_MASK(U_OTHER_NUMBER) 7016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_ZS_MASK U_MASK(U_SPACE_SEPARATOR) 7046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_ZL_MASK U_MASK(U_LINE_SEPARATOR) 7066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_ZP_MASK U_MASK(U_PARAGRAPH_SEPARATOR) 7086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_CC_MASK U_MASK(U_CONTROL_CHAR) 7116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_CF_MASK U_MASK(U_FORMAT_CHAR) 7136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_CO_MASK U_MASK(U_PRIVATE_USE_CHAR) 7156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_CS_MASK U_MASK(U_SURROGATE) 7176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PD_MASK U_MASK(U_DASH_PUNCTUATION) 7206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PS_MASK U_MASK(U_START_PUNCTUATION) 7226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PE_MASK U_MASK(U_END_PUNCTUATION) 7246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PC_MASK U_MASK(U_CONNECTOR_PUNCTUATION) 7266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PO_MASK U_MASK(U_OTHER_PUNCTUATION) 7286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_SM_MASK U_MASK(U_MATH_SYMBOL) 7316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_SC_MASK U_MASK(U_CURRENCY_SYMBOL) 7336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_SK_MASK U_MASK(U_MODIFIER_SYMBOL) 7356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_SO_MASK U_MASK(U_OTHER_SYMBOL) 7376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PI_MASK U_MASK(U_INITIAL_PUNCTUATION) 7406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for a UCharCategory. @stable ICU 2.1 */ 7416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_PF_MASK U_MASK(U_FINAL_PUNCTUATION) 7426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (L Letters). @stable ICU 2.1 */ 7456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_L_MASK \ 7466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK|U_GC_LM_MASK|U_GC_LO_MASK) 7476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (LC Cased Letters). @stable ICU 2.1 */ 7496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_LC_MASK \ 7506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK) 7516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (M Marks). @stable ICU 2.1 */ 7536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_M_MASK (U_GC_MN_MASK|U_GC_ME_MASK|U_GC_MC_MASK) 7546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (N Numbers). @stable ICU 2.1 */ 7566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_N_MASK (U_GC_ND_MASK|U_GC_NL_MASK|U_GC_NO_MASK) 7576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (Z Separators). @stable ICU 2.1 */ 7596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_Z_MASK (U_GC_ZS_MASK|U_GC_ZL_MASK|U_GC_ZP_MASK) 7606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (C Others). @stable ICU 2.1 */ 7626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_C_MASK \ 7636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (U_GC_CN_MASK|U_GC_CC_MASK|U_GC_CF_MASK|U_GC_CO_MASK|U_GC_CS_MASK) 7646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (P Punctuation). @stable ICU 2.1 */ 7666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_P_MASK \ 7676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org (U_GC_PD_MASK|U_GC_PS_MASK|U_GC_PE_MASK|U_GC_PC_MASK|U_GC_PO_MASK| \ 7686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GC_PI_MASK|U_GC_PF_MASK) 7696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Mask constant for multiple UCharCategory bits (S Symbols). @stable ICU 2.1 */ 7716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GC_S_MASK (U_GC_SM_MASK|U_GC_SC_MASK|U_GC_SK_MASK|U_GC_SO_MASK) 7726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 7746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This specifies the language directional property of a character set. 7756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 7766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 7776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UCharDirection { 7786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 7796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UCharDirection constants and their API comments are parsed by preparseucd.py. 7806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches pairs of lines like 7816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * / ** <Unicode 1..3-letter Bidi_Class value> comment... * / 7826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_<[A-Z_]+> = <integer>, 7836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 7846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 7856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** L @stable ICU 2.0 */ 7866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LEFT_TO_RIGHT = 0, 7876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** R @stable ICU 2.0 */ 7886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_RIGHT_TO_LEFT = 1, 7896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** EN @stable ICU 2.0 */ 7906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EUROPEAN_NUMBER = 2, 7916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** ES @stable ICU 2.0 */ 7926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EUROPEAN_NUMBER_SEPARATOR = 3, 7936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** ET @stable ICU 2.0 */ 7946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EUROPEAN_NUMBER_TERMINATOR = 4, 7956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** AN @stable ICU 2.0 */ 7966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_ARABIC_NUMBER = 5, 7976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** CS @stable ICU 2.0 */ 7986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_COMMON_NUMBER_SEPARATOR = 6, 7996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** B @stable ICU 2.0 */ 8006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BLOCK_SEPARATOR = 7, 8016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** S @stable ICU 2.0 */ 8026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SEGMENT_SEPARATOR = 8, 8036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** WS @stable ICU 2.0 */ 8046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WHITE_SPACE_NEUTRAL = 9, 8056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** ON @stable ICU 2.0 */ 8066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_OTHER_NEUTRAL = 10, 8076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** LRE @stable ICU 2.0 */ 8086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LEFT_TO_RIGHT_EMBEDDING = 11, 8096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** LRO @stable ICU 2.0 */ 8106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LEFT_TO_RIGHT_OVERRIDE = 12, 8116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** AL @stable ICU 2.0 */ 8126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_RIGHT_TO_LEFT_ARABIC = 13, 8136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** RLE @stable ICU 2.0 */ 8146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_RIGHT_TO_LEFT_EMBEDDING = 14, 8156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** RLO @stable ICU 2.0 */ 8166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_RIGHT_TO_LEFT_OVERRIDE = 15, 8176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** PDF @stable ICU 2.0 */ 8186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_POP_DIRECTIONAL_FORMAT = 16, 8196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** NSM @stable ICU 2.0 */ 8206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DIR_NON_SPACING_MARK = 17, 8216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** BN @stable ICU 2.0 */ 8226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BOUNDARY_NEUTRAL = 18, 8236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** FSI @stable ICU 52 */ 8246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_FIRST_STRONG_ISOLATE = 19, 8256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** LRI @stable ICU 52 */ 8266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LEFT_TO_RIGHT_ISOLATE = 20, 8276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** RLI @stable ICU 52 */ 8286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_RIGHT_TO_LEFT_ISOLATE = 21, 8296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** PDI @stable ICU 52 */ 8306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_POP_DIRECTIONAL_ISOLATE = 22, 8316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CHAR_DIRECTION_COUNT 8336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UCharDirection; 8346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 8366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Bidi Paired Bracket Type constants. 8376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 8386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_BIDI_PAIRED_BRACKET_TYPE 8396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 52 8406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 8416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UBidiPairedBracketType { 8426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 8436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UBidiPairedBracketType constants are parsed by preparseucd.py. 8446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 8456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_BPT_<Unicode Bidi_Paired_Bracket_Type value name> 8466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 8476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Not a paired bracket. @stable ICU 52 */ 8496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BPT_NONE, 8506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Open paired bracket. @stable ICU 52 */ 8516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BPT_OPEN, 8526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Close paired bracket. @stable ICU 52 */ 8536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BPT_CLOSE, 8546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 52 */ 8556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_BPT_COUNT /* 3 */ 8566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UBidiPairedBracketType; 8576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 8596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Constants for Unicode blocks, see the Unicode Data file Blocks.txt 8606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 8616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 8626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgenum UBlockCode { 8636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 8646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UBlockCode constants are parsed by preparseucd.py. 8656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 8666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UBLOCK_<Unicode Block value name> = <integer>, 8676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 8686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** New No_Block value in Unicode 4. @stable ICU 2.6 */ 8706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_NO_BLOCK = 0, /*[none]*/ /* Special range indicating No_Block */ 8716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BASIC_LATIN = 1, /*[0000]*/ 8746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_1_SUPPLEMENT=2, /*[0080]*/ 8776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_EXTENDED_A =3, /*[0100]*/ 8806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_EXTENDED_B =4, /*[0180]*/ 8836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_IPA_EXTENSIONS =5, /*[0250]*/ 8866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SPACING_MODIFIER_LETTERS =6, /*[02B0]*/ 8896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 8916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COMBINING_DIACRITICAL_MARKS =7, /*[0300]*/ 8926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 8946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 3.2 renames this block to "Greek and Coptic". 8956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 8966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 8976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GREEK =8, /*[0370]*/ 8986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 8996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYRILLIC =9, /*[0400]*/ 9016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARMENIAN =10, /*[0530]*/ 9046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HEBREW =11, /*[0590]*/ 9076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC =12, /*[0600]*/ 9106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SYRIAC =13, /*[0700]*/ 9136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_THAANA =14, /*[0780]*/ 9166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_DEVANAGARI =15, /*[0900]*/ 9196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BENGALI =16, /*[0980]*/ 9226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GURMUKHI =17, /*[0A00]*/ 9256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GUJARATI =18, /*[0A80]*/ 9286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ORIYA =19, /*[0B00]*/ 9316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAMIL =20, /*[0B80]*/ 9346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TELUGU =21, /*[0C00]*/ 9376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KANNADA =22, /*[0C80]*/ 9406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MALAYALAM =23, /*[0D00]*/ 9436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SINHALA =24, /*[0D80]*/ 9466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_THAI =25, /*[0E00]*/ 9496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LAO =26, /*[0E80]*/ 9526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TIBETAN =27, /*[0F00]*/ 9556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MYANMAR =28, /*[1000]*/ 9586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GEORGIAN =29, /*[10A0]*/ 9616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANGUL_JAMO =30, /*[1100]*/ 9646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ETHIOPIC =31, /*[1200]*/ 9676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CHEROKEE =32, /*[13A0]*/ 9706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS =33, /*[1400]*/ 9736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OGHAM =34, /*[1680]*/ 9766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_RUNIC =35, /*[16A0]*/ 9796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KHMER =36, /*[1780]*/ 9826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MONGOLIAN =37, /*[1800]*/ 9856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_EXTENDED_ADDITIONAL =38, /*[1E00]*/ 9886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GREEK_EXTENDED =39, /*[1F00]*/ 9916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GENERAL_PUNCTUATION =40, /*[2000]*/ 9946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPERSCRIPTS_AND_SUBSCRIPTS =41, /*[2070]*/ 9976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 9986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 9996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CURRENCY_SYMBOLS =42, /*[20A0]*/ 10006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 10026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 3.2 renames this block to "Combining Diacritical Marks for Symbols". 10036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 10046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 10056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COMBINING_MARKS_FOR_SYMBOLS =43, /*[20D0]*/ 10066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LETTERLIKE_SYMBOLS =44, /*[2100]*/ 10096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_NUMBER_FORMS =45, /*[2150]*/ 10126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARROWS =46, /*[2190]*/ 10156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MATHEMATICAL_OPERATORS =47, /*[2200]*/ 10186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_TECHNICAL =48, /*[2300]*/ 10216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CONTROL_PICTURES =49, /*[2400]*/ 10246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OPTICAL_CHARACTER_RECOGNITION =50, /*[2440]*/ 10276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ENCLOSED_ALPHANUMERICS =51, /*[2460]*/ 10306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BOX_DRAWING =52, /*[2500]*/ 10336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BLOCK_ELEMENTS =53, /*[2580]*/ 10366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GEOMETRIC_SHAPES =54, /*[25A0]*/ 10396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_SYMBOLS =55, /*[2600]*/ 10426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_DINGBATS =56, /*[2700]*/ 10456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BRAILLE_PATTERNS =57, /*[2800]*/ 10486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_RADICALS_SUPPLEMENT =58, /*[2E80]*/ 10516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KANGXI_RADICALS =59, /*[2F00]*/ 10546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_IDEOGRAPHIC_DESCRIPTION_CHARACTERS =60, /*[2FF0]*/ 10576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_SYMBOLS_AND_PUNCTUATION =61, /*[3000]*/ 10606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HIRAGANA =62, /*[3040]*/ 10636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KATAKANA =63, /*[30A0]*/ 10666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BOPOMOFO =64, /*[3100]*/ 10696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANGUL_COMPATIBILITY_JAMO =65, /*[3130]*/ 10726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KANBUN =66, /*[3190]*/ 10756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BOPOMOFO_EXTENDED =67, /*[31A0]*/ 10786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ENCLOSED_CJK_LETTERS_AND_MONTHS =68, /*[3200]*/ 10816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_COMPATIBILITY =69, /*[3300]*/ 10846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A =70, /*[3400]*/ 10876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_UNIFIED_IDEOGRAPHS =71, /*[4E00]*/ 10906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_YI_SYLLABLES =72, /*[A000]*/ 10936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_YI_RADICALS =73, /*[A490]*/ 10966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 10976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 10986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANGUL_SYLLABLES =74, /*[AC00]*/ 10996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HIGH_SURROGATES =75, /*[D800]*/ 11026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HIGH_PRIVATE_USE_SURROGATES =76, /*[DB80]*/ 11056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LOW_SURROGATES =77, /*[DC00]*/ 11086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 11106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as UBLOCK_PRIVATE_USE. 11116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Until Unicode 3.1.1, the corresponding block name was "Private Use", 11126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and multiple code point ranges had this block. 11136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 3.2 renames the block for the BMP PUA to "Private Use Area" and 11146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * adds separate blocks for the supplementary PUAs. 11156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 11166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 11176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 11186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PRIVATE_USE_AREA =78, /*[E000]*/ 11196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 11206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as UBLOCK_PRIVATE_USE_AREA. 11216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Until Unicode 3.1.1, the corresponding block name was "Private Use", 11226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and multiple code point ranges had this block. 11236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 3.2 renames the block for the BMP PUA to "Private Use Area" and 11246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * adds separate blocks for the supplementary PUAs. 11256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 11266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 11276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 11286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PRIVATE_USE = UBLOCK_PRIVATE_USE_AREA, 11296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS =79, /*[F900]*/ 11326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ALPHABETIC_PRESENTATION_FORMS =80, /*[FB00]*/ 11356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC_PRESENTATION_FORMS_A =81, /*[FB50]*/ 11386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COMBINING_HALF_MARKS =82, /*[FE20]*/ 11416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_COMPATIBILITY_FORMS =83, /*[FE30]*/ 11446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SMALL_FORM_VARIANTS =84, /*[FE50]*/ 11476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC_PRESENTATION_FORMS_B =85, /*[FE70]*/ 11506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SPECIALS =86, /*[FFF0]*/ 11536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS =87, /*[FF00]*/ 11566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 3.1 */ 11586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OLD_ITALIC = 88, /*[10300]*/ 11616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GOTHIC = 89, /*[10330]*/ 11636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_DESERET = 90, /*[10400]*/ 11656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BYZANTINE_MUSICAL_SYMBOLS = 91, /*[1D000]*/ 11676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MUSICAL_SYMBOLS = 92, /*[1D100]*/ 11696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MATHEMATICAL_ALPHANUMERIC_SYMBOLS = 93, /*[1D400]*/ 11716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B = 94, /*[20000]*/ 11736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT = 95, /*[2F800]*/ 11756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 11766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAGS = 96, /*[E0000]*/ 11776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 3.2 */ 11796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 11806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.0 */ 11816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYRILLIC_SUPPLEMENT = 97, /*[0500]*/ 11826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 11836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 4.0.1 renames the "Cyrillic Supplementary" block to "Cyrillic Supplement". 11846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 11856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 11866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYRILLIC_SUPPLEMENTARY = UBLOCK_CYRILLIC_SUPPLEMENT, 11876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAGALOG = 98, /*[1700]*/ 11896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANUNOO = 99, /*[1720]*/ 11916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BUHID = 100, /*[1740]*/ 11936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAGBANWA = 101, /*[1760]*/ 11956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A = 102, /*[27C0]*/ 11976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 11986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTAL_ARROWS_A = 103, /*[27F0]*/ 11996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTAL_ARROWS_B = 104, /*[2900]*/ 12016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B = 105, /*[2980]*/ 12036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTAL_MATHEMATICAL_OPERATORS = 106, /*[2A00]*/ 12056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KATAKANA_PHONETIC_EXTENSIONS = 107, /*[31F0]*/ 12076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_VARIATION_SELECTORS = 108, /*[FE00]*/ 12096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_A = 109, /*[F0000]*/ 12116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.2 */ 12126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_B = 110, /*[100000]*/ 12136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 4 */ 12156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LIMBU = 111, /*[1900]*/ 12186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAI_LE = 112, /*[1950]*/ 12206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KHMER_SYMBOLS = 113, /*[19E0]*/ 12226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PHONETIC_EXTENSIONS = 114, /*[1D00]*/ 12246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_SYMBOLS_AND_ARROWS = 115, /*[2B00]*/ 12266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_YIJING_HEXAGRAM_SYMBOLS = 116, /*[4DC0]*/ 12286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LINEAR_B_SYLLABARY = 117, /*[10000]*/ 12306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LINEAR_B_IDEOGRAMS = 118, /*[10080]*/ 12326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_AEGEAN_NUMBERS = 119, /*[10100]*/ 12346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_UGARITIC = 120, /*[10380]*/ 12366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SHAVIAN = 121, /*[10450]*/ 12386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OSMANYA = 122, /*[10480]*/ 12406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYPRIOT_SYLLABARY = 123, /*[10800]*/ 12426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAI_XUAN_JING_SYMBOLS = 124, /*[1D300]*/ 12446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.6 */ 12456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_VARIATION_SELECTORS_SUPPLEMENT = 125, /*[E0100]*/ 12466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 4.1 */ 12486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ANCIENT_GREEK_MUSICAL_NOTATION = 126, /*[1D200]*/ 12516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ANCIENT_GREEK_NUMBERS = 127, /*[10140]*/ 12536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC_SUPPLEMENT = 128, /*[0750]*/ 12556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BUGINESE = 129, /*[1A00]*/ 12576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_STROKES = 130, /*[31C0]*/ 12596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT = 131, /*[1DC0]*/ 12616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COPTIC = 132, /*[2C80]*/ 12636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ETHIOPIC_EXTENDED = 133, /*[2D80]*/ 12656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ETHIOPIC_SUPPLEMENT = 134, /*[1380]*/ 12676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GEORGIAN_SUPPLEMENT = 135, /*[2D00]*/ 12696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_GLAGOLITIC = 136, /*[2C00]*/ 12716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KHAROSHTHI = 137, /*[10A00]*/ 12736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MODIFIER_TONE_LETTERS = 138, /*[A700]*/ 12756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_NEW_TAI_LUE = 139, /*[1980]*/ 12776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OLD_PERSIAN = 140, /*[103A0]*/ 12796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PHONETIC_EXTENSIONS_SUPPLEMENT = 141, /*[1D80]*/ 12816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUPPLEMENTAL_PUNCTUATION = 142, /*[2E00]*/ 12836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SYLOTI_NAGRI = 143, /*[A800]*/ 12856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TIFINAGH = 144, /*[2D30]*/ 12876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.4 */ 12886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_VERTICAL_FORMS = 145, /*[FE10]*/ 12896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 5.0 */ 12916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 12926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 12936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_NKO = 146, /*[07C0]*/ 12946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 12956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BALINESE = 147, /*[1B00]*/ 12966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 12976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_EXTENDED_C = 148, /*[2C60]*/ 12986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 12996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LATIN_EXTENDED_D = 149, /*[A720]*/ 13006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 13016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PHAGS_PA = 150, /*[A840]*/ 13026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 13036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PHOENICIAN = 151, /*[10900]*/ 13046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 13056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CUNEIFORM = 152, /*[12000]*/ 13066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 13076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CUNEIFORM_NUMBERS_AND_PUNCTUATION = 153, /*[12400]*/ 13086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 3.6 */ 13096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COUNTING_ROD_NUMERALS = 154, /*[1D360]*/ 13106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 13116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 5.1 */ 13126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 13136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUNDANESE = 155, /*[1B80]*/ 13156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LEPCHA = 156, /*[1C00]*/ 13176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OL_CHIKI = 157, /*[1C50]*/ 13196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYRILLIC_EXTENDED_A = 158, /*[2DE0]*/ 13216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_VAI = 159, /*[A500]*/ 13236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CYRILLIC_EXTENDED_B = 160, /*[A640]*/ 13256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SAURASHTRA = 161, /*[A880]*/ 13276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KAYAH_LI = 162, /*[A900]*/ 13296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_REJANG = 163, /*[A930]*/ 13316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CHAM = 164, /*[AA00]*/ 13336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ANCIENT_SYMBOLS = 165, /*[10190]*/ 13356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PHAISTOS_DISC = 166, /*[101D0]*/ 13376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LYCIAN = 167, /*[10280]*/ 13396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CARIAN = 168, /*[102A0]*/ 13416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LYDIAN = 169, /*[10920]*/ 13436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MAHJONG_TILES = 170, /*[1F000]*/ 13456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.0 */ 13466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_DOMINO_TILES = 171, /*[1F030]*/ 13476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 13486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 5.2 */ 13496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 13506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SAMARITAN = 172, /*[0800]*/ 13526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED = 173, /*[18B0]*/ 13546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAI_THAM = 174, /*[1A20]*/ 13566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_VEDIC_EXTENSIONS = 175, /*[1CD0]*/ 13586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_LISU = 176, /*[A4D0]*/ 13606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BAMUM = 177, /*[A6A0]*/ 13626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COMMON_INDIC_NUMBER_FORMS = 178, /*[A830]*/ 13646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_DEVANAGARI_EXTENDED = 179, /*[A8E0]*/ 13666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANGUL_JAMO_EXTENDED_A = 180, /*[A960]*/ 13686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_JAVANESE = 181, /*[A980]*/ 13706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MYANMAR_EXTENDED_A = 182, /*[AA60]*/ 13726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAI_VIET = 183, /*[AA80]*/ 13746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MEETEI_MAYEK = 184, /*[ABC0]*/ 13766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_HANGUL_JAMO_EXTENDED_B = 185, /*[D7B0]*/ 13786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_IMPERIAL_ARAMAIC = 186, /*[10840]*/ 13806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OLD_SOUTH_ARABIAN = 187, /*[10A60]*/ 13826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_AVESTAN = 188, /*[10B00]*/ 13846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_INSCRIPTIONAL_PARTHIAN = 189, /*[10B40]*/ 13866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_INSCRIPTIONAL_PAHLAVI = 190, /*[10B60]*/ 13886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_OLD_TURKIC = 191, /*[10C00]*/ 13906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_RUMI_NUMERAL_SYMBOLS = 192, /*[10E60]*/ 13926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KAITHI = 193, /*[11080]*/ 13946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_EGYPTIAN_HIEROGLYPHS = 194, /*[13000]*/ 13966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ENCLOSED_ALPHANUMERIC_SUPPLEMENT = 195, /*[1F100]*/ 13986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 13996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT = 196, /*[1F200]*/ 14006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.4 */ 14016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C = 197, /*[2A700]*/ 14026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 6.0 */ 14046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MANDAIC = 198, /*[0840]*/ 14076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BATAK = 199, /*[1BC0]*/ 14096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ETHIOPIC_EXTENDED_A = 200, /*[AB00]*/ 14116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BRAHMI = 201, /*[11000]*/ 14136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_BAMUM_SUPPLEMENT = 202, /*[16800]*/ 14156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_KANA_SUPPLEMENT = 203, /*[1B000]*/ 14176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_PLAYING_CARDS = 204, /*[1F0A0]*/ 14196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS = 205, /*[1F300]*/ 14216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_EMOTICONS = 206, /*[1F600]*/ 14236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TRANSPORT_AND_MAP_SYMBOLS = 207, /*[1F680]*/ 14256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ALCHEMICAL_SYMBOLS = 208, /*[1F700]*/ 14276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 4.6 */ 14286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D = 209, /*[2B740]*/ 14296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* New blocks in Unicode 6.1 */ 14316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC_EXTENDED_A = 210, /*[08A0]*/ 14346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS = 211, /*[1EE00]*/ 14366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_CHAKMA = 212, /*[11100]*/ 14386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MEETEI_MAYEK_EXTENSIONS = 213, /*[AAE0]*/ 14406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MEROITIC_CURSIVE = 214, /*[109A0]*/ 14426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MEROITIC_HIEROGLYPHS = 215, /*[10980]*/ 14446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_MIAO = 216, /*[16F00]*/ 14466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SHARADA = 217, /*[11180]*/ 14486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SORA_SOMPENG = 218, /*[110D0]*/ 14506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_SUNDANESE_SUPPLEMENT = 219, /*[1CC0]*/ 14526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 49 */ 14536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_TAKRI = 220, /*[11680]*/ 14546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 14566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_COUNT = 221, 14576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 14596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UBLOCK_INVALID_CODE=-1 14606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org}; 14616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** @stable ICU 2.0 */ 14636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UBlockCode UBlockCode; 14646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 14666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * East Asian Width constants. 14676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 14686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_EAST_ASIAN_WIDTH 14696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyValue 14706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 14716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 14726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UEastAsianWidth { 14736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 14746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UEastAsianWidth constants are parsed by preparseucd.py. 14756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 14766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_EA_<Unicode East_Asian_Width value name> 14776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 14786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_NEUTRAL, /*[N]*/ 14806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_AMBIGUOUS, /*[A]*/ 14816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_HALFWIDTH, /*[H]*/ 14826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_FULLWIDTH, /*[F]*/ 14836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_NARROW, /*[Na]*/ 14846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_WIDE, /*[W]*/ 14856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EA_COUNT 14866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UEastAsianWidth; 14876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 14886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 14896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Selector constants for u_charName(). 14906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_charName() returns the "modern" name of a 14916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode character; or the name that was defined in 14926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode version 1.0, before the Unicode standard merged 14936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * with ISO-10646; or an "extended" name that gives each 14946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode code point a unique name. 14956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 14966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charName 14976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 14986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 14996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UCharNameChoice { 15006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Unicode character name (Name property). @stable ICU 2.0 */ 15016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_UNICODE_CHAR_NAME, 15026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef U_HIDE_DEPRECATED_API 15036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** 15046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The Unicode_1_Name property value which is of little practical value. 15056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Beginning with ICU 49, ICU APIs return an empty string for this name choice. 15066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @deprecated ICU 49 15076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_UNICODE_10_CHAR_NAME, 15096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif /* U_HIDE_DEPRECATED_API */ 15106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Standard or synthetic character name. @stable ICU 2.0 */ 15116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_EXTENDED_CHAR_NAME = U_UNICODE_CHAR_NAME+2, 15126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Corrected name from NameAliases.txt. @stable ICU 4.4 */ 15136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CHAR_NAME_ALIAS, 15146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** @stable ICU 2.0 */ 15156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_CHAR_NAME_CHOICE_COUNT 15166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UCharNameChoice; 15176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 15196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Selector constants for u_getPropertyName() and 15206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_getPropertyValueName(). These selectors are used to choose which 15216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * name is returned for a given property or value. All properties and 15226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * values have a long name. Most have a short name, but some do not. 15236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode allows for additional names, beyond the long and short 15246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * name, which would be indicated by U_LONG_PROPERTY_NAME + i, where 15256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * i=1, 2,... 15266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 15276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getPropertyName() 15286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getPropertyValueName() 15296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.4 15306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UPropertyNameChoice { 15326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SHORT_PROPERTY_NAME, 15336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LONG_PROPERTY_NAME, 15346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_PROPERTY_NAME_CHOICE_COUNT 15356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UPropertyNameChoice; 15366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 15386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Decomposition Type constants. 15396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 15406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_DECOMPOSITION_TYPE 15416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 15426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UDecompositionType { 15446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 15456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UDecompositionType constants are parsed by preparseucd.py. 15466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 15476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_DT_<Unicode Decomposition_Type value name> 15486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_NONE, /*[none]*/ 15516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_CANONICAL, /*[can]*/ 15526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_COMPAT, /*[com]*/ 15536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_CIRCLE, /*[enc]*/ 15546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_FINAL, /*[fin]*/ 15556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_FONT, /*[font]*/ 15566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_FRACTION, /*[fra]*/ 15576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_INITIAL, /*[init]*/ 15586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_ISOLATED, /*[iso]*/ 15596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_MEDIAL, /*[med]*/ 15606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_NARROW, /*[nar]*/ 15616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_NOBREAK, /*[nb]*/ 15626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_SMALL, /*[sml]*/ 15636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_SQUARE, /*[sqr]*/ 15646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_SUB, /*[sub]*/ 15656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_SUPER, /*[sup]*/ 15666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_VERTICAL, /*[vert]*/ 15676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_WIDE, /*[wide]*/ 15686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_DT_COUNT /* 18 */ 15696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UDecompositionType; 15706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 15726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Joining Type constants. 15736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 15746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_JOINING_TYPE 15756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 15766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UJoiningType { 15786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 15796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UJoiningType constants are parsed by preparseucd.py. 15806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 15816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_JT_<Unicode Joining_Type value name> 15826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_NON_JOINING, /*[U]*/ 15856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_JOIN_CAUSING, /*[C]*/ 15866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_DUAL_JOINING, /*[D]*/ 15876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_LEFT_JOINING, /*[L]*/ 15886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_RIGHT_JOINING, /*[R]*/ 15896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_TRANSPARENT, /*[T]*/ 15906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JT_COUNT /* 6 */ 15916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UJoiningType; 15926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 15936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 15946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Joining Group constants. 15956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 15966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_JOINING_GROUP 15976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 15986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 15996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UJoiningGroup { 16006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 16016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UJoiningGroup constants are parsed by preparseucd.py. 16026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 16036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_JG_<Unicode Joining_Group value name> 16046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 16056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 16066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_NO_JOINING_GROUP, 16076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_AIN, 16086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_ALAPH, 16096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_ALEF, 16106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_BEH, 16116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_BETH, 16126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_DAL, 16136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_DALATH_RISH, 16146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_E, 16156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_FEH, 16166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_FINAL_SEMKATH, 16176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_GAF, 16186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_GAMAL, 16196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HAH, 16206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_TEH_MARBUTA_GOAL, /**< @stable ICU 4.6 */ 16216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HAMZA_ON_HEH_GOAL=U_JG_TEH_MARBUTA_GOAL, 16226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HE, 16236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HEH, 16246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HEH_GOAL, 16256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_HETH, 16266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_KAF, 16276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_KAPH, 16286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_KNOTTED_HEH, 16296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_LAM, 16306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_LAMADH, 16316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_MEEM, 16326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_MIM, 16336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_NOON, 16346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_NUN, 16356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_PE, 16366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_QAF, 16376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_QAPH, 16386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_REH, 16396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_REVERSED_PE, 16406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SAD, 16416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SADHE, 16426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SEEN, 16436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SEMKATH, 16446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SHIN, 16456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SWASH_KAF, 16466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_SYRIAC_WAW, 16476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_TAH, 16486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_TAW, 16496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_TEH_MARBUTA, 16506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_TETH, 16516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_WAW, 16526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_YEH, 16536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_YEH_BARREE, 16546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_YEH_WITH_TAIL, 16556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_YUDH, 16566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_YUDH_HE, 16576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_ZAIN, 16586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_FE, /**< @stable ICU 2.6 */ 16596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_KHAPH, /**< @stable ICU 2.6 */ 16606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_ZHAIN, /**< @stable ICU 2.6 */ 16616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_BURUSHASKI_YEH_BARREE, /**< @stable ICU 4.0 */ 16626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_FARSI_YEH, /**< @stable ICU 4.4 */ 16636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_NYA, /**< @stable ICU 4.4 */ 16646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_ROHINGYA_YEH, /**< @stable ICU 49 */ 16656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_JG_COUNT 16666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UJoiningGroup; 16676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 16686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 16696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Grapheme Cluster Break constants. 16706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 16716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_GRAPHEME_CLUSTER_BREAK 16726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 3.4 16736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 16746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UGraphemeClusterBreak { 16756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 16766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UGraphemeClusterBreak constants are parsed by preparseucd.py. 16776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 16786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_GCB_<Unicode Grapheme_Cluster_Break value name> 16796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 16806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 16816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_OTHER = 0, /*[XX]*/ 16826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_CONTROL = 1, /*[CN]*/ 16836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_CR = 2, /*[CR]*/ 16846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_EXTEND = 3, /*[EX]*/ 16856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_L = 4, /*[L]*/ 16866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_LF = 5, /*[LF]*/ 16876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_LV = 6, /*[LV]*/ 16886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_LVT = 7, /*[LVT]*/ 16896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_T = 8, /*[T]*/ 16906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_V = 9, /*[V]*/ 16916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_SPACING_MARK = 10, /*[SM]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 16926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_PREPEND = 11, /*[PP]*/ 16936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_REGIONAL_INDICATOR = 12, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */ 16946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_GCB_COUNT = 13 16956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UGraphemeClusterBreak; 16966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 16976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 16986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Word Break constants. 16996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (UWordBreak is a pre-existing enum type in ubrk.h for word break status tags.) 17006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 17016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_WORD_BREAK 17026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 3.4 17036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UWordBreakValues { 17056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 17066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UWordBreakValues constants are parsed by preparseucd.py. 17076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 17086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_WB_<Unicode Word_Break value name> 17096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 17116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_OTHER = 0, /*[XX]*/ 17126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_ALETTER = 1, /*[LE]*/ 17136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_FORMAT = 2, /*[FO]*/ 17146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_KATAKANA = 3, /*[KA]*/ 17156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_MIDLETTER = 4, /*[ML]*/ 17166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_MIDNUM = 5, /*[MN]*/ 17176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_NUMERIC = 6, /*[NU]*/ 17186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_EXTENDNUMLET = 7, /*[EX]*/ 17196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_CR = 8, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 17206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_EXTEND = 9, /*[Extend]*/ 17216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_LF = 10, /*[LF]*/ 17226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_MIDNUMLET =11, /*[MB]*/ 17236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_NEWLINE =12, /*[NL]*/ 17246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_REGIONAL_INDICATOR = 13, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */ 17256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_HEBREW_LETTER = 14, /*[HL]*/ /* from here on: new in Unicode 6.3/ICU 52 */ 17266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_SINGLE_QUOTE = 15, /*[SQ]*/ 17276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_DOUBLE_QUOTE = 16, /*[DQ]*/ 17286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_WB_COUNT = 17 17296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UWordBreakValues; 17306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 17316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 17326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Sentence Break constants. 17336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 17346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_SENTENCE_BREAK 17356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 3.4 17366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum USentenceBreak { 17386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 17396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: USentenceBreak constants are parsed by preparseucd.py. 17406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 17416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_SB_<Unicode Sentence_Break value name> 17426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 17446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_OTHER = 0, /*[XX]*/ 17456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_ATERM = 1, /*[AT]*/ 17466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_CLOSE = 2, /*[CL]*/ 17476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_FORMAT = 3, /*[FO]*/ 17486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_LOWER = 4, /*[LO]*/ 17496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_NUMERIC = 5, /*[NU]*/ 17506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_OLETTER = 6, /*[LE]*/ 17516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_SEP = 7, /*[SE]*/ 17526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_SP = 8, /*[SP]*/ 17536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_STERM = 9, /*[ST]*/ 17546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_UPPER = 10, /*[UP]*/ 17556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_CR = 11, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */ 17566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_EXTEND = 12, /*[EX]*/ 17576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_LF = 13, /*[LF]*/ 17586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_SCONTINUE = 14, /*[SC]*/ 17596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_SB_COUNT = 15 17606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} USentenceBreak; 17616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 17626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 17636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Line Break constants. 17646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 17656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_LINE_BREAK 17666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 17676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum ULineBreak { 17696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 17706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: ULineBreak constants are parsed by preparseucd.py. 17716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 17726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_LB_<Unicode Line_Break value name> 17736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 17746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 17756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_UNKNOWN = 0, /*[XX]*/ 17766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_AMBIGUOUS = 1, /*[AI]*/ 17776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_ALPHABETIC = 2, /*[AL]*/ 17786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_BREAK_BOTH = 3, /*[B2]*/ 17796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_BREAK_AFTER = 4, /*[BA]*/ 17806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_BREAK_BEFORE = 5, /*[BB]*/ 17816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_MANDATORY_BREAK = 6, /*[BK]*/ 17826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_CONTINGENT_BREAK = 7, /*[CB]*/ 17836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_CLOSE_PUNCTUATION = 8, /*[CL]*/ 17846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_COMBINING_MARK = 9, /*[CM]*/ 17856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_CARRIAGE_RETURN = 10, /*[CR]*/ 17866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_EXCLAMATION = 11, /*[EX]*/ 17876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_GLUE = 12, /*[GL]*/ 17886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_HYPHEN = 13, /*[HY]*/ 17896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_IDEOGRAPHIC = 14, /*[ID]*/ 17906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /** Renamed from the misspelled "inseperable" in Unicode 4.0.1/ICU 3.0 @stable ICU 3.0 */ 17916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_INSEPARABLE = 15, /*[IN]*/ 17926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_INSEPERABLE = U_LB_INSEPARABLE, 17936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_INFIX_NUMERIC = 16, /*[IS]*/ 17946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_LINE_FEED = 17, /*[LF]*/ 17956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_NONSTARTER = 18, /*[NS]*/ 17966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_NUMERIC = 19, /*[NU]*/ 17976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_OPEN_PUNCTUATION = 20, /*[OP]*/ 17986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_POSTFIX_NUMERIC = 21, /*[PO]*/ 17996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_PREFIX_NUMERIC = 22, /*[PR]*/ 18006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_QUOTATION = 23, /*[QU]*/ 18016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_COMPLEX_CONTEXT = 24, /*[SA]*/ 18026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_SURROGATE = 25, /*[SG]*/ 18036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_SPACE = 26, /*[SP]*/ 18046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_BREAK_SYMBOLS = 27, /*[SY]*/ 18056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_ZWSPACE = 28, /*[ZW]*/ 18066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_NEXT_LINE = 29, /*[NL]*/ /* from here on: new in Unicode 4/ICU 2.6 */ 18076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_WORD_JOINER = 30, /*[WJ]*/ 18086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_H2 = 31, /*[H2]*/ /* from here on: new in Unicode 4.1/ICU 3.4 */ 18096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_H3 = 32, /*[H3]*/ 18106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_JL = 33, /*[JL]*/ 18116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_JT = 34, /*[JT]*/ 18126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_JV = 35, /*[JV]*/ 18136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_CLOSE_PARENTHESIS = 36, /*[CP]*/ /* new in Unicode 5.2/ICU 4.4 */ 18146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_CONDITIONAL_JAPANESE_STARTER = 37,/*[CJ]*/ /* new in Unicode 6.1/ICU 49 */ 18156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_HEBREW_LETTER = 38, /*[HL]*/ /* new in Unicode 6.1/ICU 49 */ 18166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_REGIONAL_INDICATOR = 39,/*[RI]*/ /* new in Unicode 6.2/ICU 50 */ 18176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_LB_COUNT = 40 18186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} ULineBreak; 18196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 18216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Numeric Type constants. 18226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_NUMERIC_TYPE 18246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 18256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 18266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UNumericType { 18276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 18286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UNumericType constants are parsed by preparseucd.py. 18296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 18306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_NT_<Unicode Numeric_Type value name> 18316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 18326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NT_NONE, /*[None]*/ 18346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NT_DECIMAL, /*[de]*/ 18356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NT_DIGIT, /*[di]*/ 18366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NT_NUMERIC, /*[nu]*/ 18376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_NT_COUNT 18386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UNumericType; 18396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 18416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Hangul Syllable Type constants. 18426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_HANGUL_SYLLABLE_TYPE 18446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 18456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 18466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef enum UHangulSyllableType { 18476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* 18486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: UHangulSyllableType constants are parsed by preparseucd.py. 18496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It matches lines like 18506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_HST_<Unicode Hangul_Syllable_Type value name> 18516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 18526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_NOT_APPLICABLE, /*[NA]*/ 18546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_LEADING_JAMO, /*[L]*/ 18556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_VOWEL_JAMO, /*[V]*/ 18566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_TRAILING_JAMO, /*[T]*/ 18576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_LV_SYLLABLE, /*[LV]*/ 18586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_LVT_SYLLABLE, /*[LVT]*/ 18596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org U_HST_COUNT 18606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org} UHangulSyllableType; 18616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 18636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check a binary Unicode property for a code point. 18646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode, especially in version 3.2, defines many more properties than the 18666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * original set in UnicodeData.txt. 18676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The properties APIs are intended to reflect Unicode properties as defined 18696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 18706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For details about the properties see http://www.unicode.org/ucd/ . 18716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For names of Unicode properties see the UCD file PropertyAliases.txt. 18726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Important: If ICU is built with UCD files from Unicode versions below 3.2, 18746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * then properties marked with "new in Unicode 3.2" are not or not fully available. 18756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test. 18776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param which UProperty selector constant, identifies which binary property to check. 18786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT. 18796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE or FALSE according to the binary Unicode property value for c. 18806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Also FALSE if 'which' is out of bounds or if the Unicode version 18816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * does not have data for the property at all, or not for this code point. 18826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 18846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyValue 18856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 18866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 18876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 18886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 18896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_hasBinaryProperty(UChar32 c, UProperty which); 18906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 18916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 18926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check if a code point has the Alphabetic Unicode property. 18936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as u_hasBinaryProperty(c, UCHAR_ALPHABETIC). 18946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is different from u_isalpha! 18956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test 18966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return true if the code point has the Alphabetic Unicode property, false otherwise 18976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 18986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_ALPHABETIC 18996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 19006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 19016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 19026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 19036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 19046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isUAlphabetic(UChar32 c); 19056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 19066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 19076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check if a code point has the Lowercase Unicode property. 19086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as u_hasBinaryProperty(c, UCHAR_LOWERCASE). 19096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is different from u_islower! 19106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test 19116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return true if the code point has the Lowercase Unicode property, false otherwise 19126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_LOWERCASE 19146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_islower 19156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 19166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 19176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 19186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 19196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isULowercase(UChar32 c); 19206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 19216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 19226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check if a code point has the Uppercase Unicode property. 19236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as u_hasBinaryProperty(c, UCHAR_UPPERCASE). 19246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is different from u_isupper! 19256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test 19266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return true if the code point has the Uppercase Unicode property, false otherwise 19276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_UPPERCASE 19296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isupper 19306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 19316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 19326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 19336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 19346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isUUppercase(UChar32 c); 19356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 19366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 19376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Check if a code point has the White_Space Unicode property. 19386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as u_hasBinaryProperty(c, UCHAR_WHITE_SPACE). 19396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is different from both u_isspace and u_isWhitespace! 19406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions; please see the uchar.h 19426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * file documentation for a detailed comparison. 19436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test 19456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return true if the code point has the White_Space Unicode property, false otherwise. 19466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_WHITE_SPACE 19486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isWhitespace 19496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isspace 19506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isJavaSpaceChar 19516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 19526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 19536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 19546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 19556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isUWhiteSpace(UChar32 c); 19566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 19576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 19586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the property value for an enumerated or integer Unicode property for a code point. 19596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Also returns binary and mask property values. 19606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode, especially in version 3.2, defines many more properties than the 19626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * original set in UnicodeData.txt. 19636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The properties APIs are intended to reflect Unicode properties as defined 19656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in the Unicode Character Database (UCD) and Unicode Technical Reports (UTR). 19666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For details about the properties see http://www.unicode.org/ . 19676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For names of Unicode properties see the UCD file PropertyAliases.txt. 19686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Sample usage: 19706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UEastAsianWidth ea=(UEastAsianWidth)u_getIntPropertyValue(c, UCHAR_EAST_ASIAN_WIDTH); 19716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UBool b=(UBool)u_getIntPropertyValue(c, UCHAR_IDEOGRAPHIC); 19726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to test. 19746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param which UProperty selector constant, identifies which property to check. 19756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 19766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 19776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 19786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return Numeric value that is directly the property value or, 19796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for enumerated properties, corresponds to the numeric value of the enumerated 19806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * constant of the respective property value enumeration type 19816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (cast to enum type if necessary). 19826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns 0 or 1 (for FALSE/TRUE) for binary Unicode properties. 19836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns a bit-mask for mask properties. 19846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns 0 if 'which' is out of bounds or if the Unicode version 19856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * does not have data for the property at all, or not for this code point. 19866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 19876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 19886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 19896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyMinValue 19906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyMaxValue 19916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 19926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 19936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 19946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 19956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getIntPropertyValue(UChar32 c, UProperty which); 19966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 19976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 19986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the minimum value for an enumerated/integer/binary Unicode property. 19996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Can be used together with u_getIntPropertyMaxValue 20006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to allocate arrays of UnicodeSet or similar. 20016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param which UProperty selector constant, identifies which binary property to check. 20036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 20046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT. 20056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return Minimum value returned by u_getIntPropertyValue for a Unicode property. 20066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 0 if the property selector is out of range. 20076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 20096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 20106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 20116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyMaxValue 20126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyValue 20136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 20146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 20156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 20166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getIntPropertyMinValue(UProperty which); 20176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 20186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 20196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the maximum value for an enumerated/integer/binary Unicode property. 20206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Can be used together with u_getIntPropertyMinValue 20216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to allocate arrays of UnicodeSet or similar. 20226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Examples for min/max values (for Unicode 3.2): 20246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - UCHAR_BIDI_CLASS: 0/18 (U_LEFT_TO_RIGHT/U_BOUNDARY_NEUTRAL) 20266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - UCHAR_SCRIPT: 0/45 (USCRIPT_COMMON/USCRIPT_TAGBANWA) 20276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - UCHAR_IDEOGRAPHIC: 0/1 (FALSE/TRUE) 20286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For undefined UProperty constant values, min/max values will be 0/-1. 20306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param which UProperty selector constant, identifies which binary property to check. 20326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 20336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT. 20346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return Maximum value returned by u_getIntPropertyValue for a Unicode property. 20356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <=0 if the property selector is out of range. 20366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 20386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_hasBinaryProperty 20396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getUnicodeVersion 20406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyMaxValue 20416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getIntPropertyValue 20426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 20436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 20446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 20456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getIntPropertyMaxValue(UProperty which); 20466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 20476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 20486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the numeric value for a Unicode code point as defined in the 20496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode Character Database. 20506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * A "double" return type is necessary because 20526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * some numeric values are fractions, negative, or too large for int32_t. 20536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For characters without any numeric values in the Unicode Character Database, 20556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * this function will return U_NO_NUMERIC_VALUE. 20566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: This is different from the Unicode Standard which specifies NaN as the default value. 20576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (NaN is not available on all platforms.) 20586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Similar to java.lang.Character.getNumericValue(), but u_getNumericValue() 20606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * also supports negative values, large values, and fractions, 20616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * while Java's getNumericValue() returns values 10..35 for ASCII letters. 20626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c Code point to get the numeric value for. 20646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return Numeric value of c, or U_NO_NUMERIC_VALUE if none is defined. 20656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see U_NO_NUMERIC_VALUE 20676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 20686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 20696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE double U_EXPORT2 20706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getNumericValue(UChar32 c); 20716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 20726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 20736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Special value that is returned by u_getNumericValue when 20746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * no numeric value is defined for a code point. 20756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getNumericValue 20776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 20786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 20796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_NO_NUMERIC_VALUE ((double)-123456789.) 20806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 20816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 20826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point has the general category "Ll" 20836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (lowercase letter). 20846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isLowerCase(). 20866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This misses some characters that are also lowercase but 20886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * have a different general category value. 20896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In order to include those, use UCHAR_LOWERCASE. 20906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to being equivalent to a Java function, this also serves 20926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as a C/POSIX migration function. 20936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 20946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 20956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 20976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is an Ll lowercase letter 20986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 20996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_LOWERCASE 21006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isupper 21016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_istitle 21026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 21036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 21046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 21056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_islower(UChar32 c); 21066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 21076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 21086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point has the general category "Lu" 21096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (uppercase letter). 21106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isUpperCase(). 21126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This misses some characters that are also uppercase but 21146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * have a different general category value. 21156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In order to include those, use UCHAR_UPPERCASE. 21166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to being equivalent to a Java function, this also serves 21186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as a C/POSIX migration function. 21196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 21206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 21216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 21236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is an Lu uppercase letter 21246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_UPPERCASE 21266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_islower 21276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_istitle 21286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_tolower 21296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 21306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 21316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 21326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isupper(UChar32 c); 21336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 21346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 21356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a titlecase letter. 21366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for general category "Lt" (titlecase letter). 21376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isTitleCase(). 21396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 21416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is an Lt titlecase letter 21426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isupper 21446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_islower 21456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_totitle 21466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 21476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 21486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 21496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_istitle(UChar32 c); 21506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 21516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 21526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a digit character according to Java. 21536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general category "Nd" (decimal digit numbers). 21546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Beginning with Unicode 4, this is the same as 21556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * testing for the Numeric_Type of Decimal. 21566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isDigit(). 21586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to being equivalent to a Java function, this also serves 21606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as a C/POSIX migration function. 21616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 21626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 21636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 21656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a digit character according to Character.isDigit() 21666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 21686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 21696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 21706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isdigit(UChar32 c); 21716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 21726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 21736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a letter character. 21746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for general categories "L" (letters). 21756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isLetter(). 21776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to being equivalent to a Java function, this also serves 21796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as a C/POSIX migration function. 21806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 21816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 21826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 21846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a letter character 21856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 21876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalnum 21886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 21896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 21906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 21916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isalpha(UChar32 c); 21926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 21936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 21946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is an alphanumeric character 21956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (letter or digit) according to Java. 21966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general categories 21976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "L" (letters) and "Nd" (decimal digit numbers). 21986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 21996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isLetterOrDigit(). 22006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to being equivalent to a Java function, this also serves 22026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as a C/POSIX migration function. 22036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 22046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 22056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 22076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is an alphanumeric character according to Character.isLetterOrDigit() 22086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 22106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 22116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 22126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isalnum(UChar32 c); 22136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 22146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 22156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a hexadecimal digit. 22166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is equivalent to u_digit(c, 16)>=0. 22176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general category "Nd" (decimal digit numbers) 22186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as well as Latin letters a-f and A-F in both ASCII and Fullwidth ASCII. 22196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (That is, for letters with code points 22206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 0041..0046, 0061..0066, FF21..FF26, FF41..FF46.) 22216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In order to narrow the definition of hexadecimal digits to only ASCII 22236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * characters, use (c<=0x7f && u_isxdigit(c)). 22246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 22266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 22276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 22286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 22306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a hexadecimal digit 22316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 22336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 22346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 22356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isxdigit(UChar32 c); 22366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 22376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 22386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a punctuation character. 22396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general categories "P" (punctuation). 22406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 22426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 22436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 22446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 22466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a punctuation character 22476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 22496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 22506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 22516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_ispunct(UChar32 c); 22526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 22536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 22546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a "graphic" character 22556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (printable, excluding spaces). 22566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * TRUE for all characters except those with general categories 22576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Cc" (control codes), "Cf" (format controls), "Cs" (surrogates), 22586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Cn" (unassigned), and "Z" (separators). 22596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 22616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 22626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 22636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 22656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a "graphic" character 22666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 22686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 22696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 22706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isgraph(UChar32 c); 22716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 22726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 22736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a "blank" or "horizontal space", 22746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * a character that visibly separates words on a line. 22756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The following are equivalent definitions: 22766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * TRUE for Unicode White_Space characters except for "vertical space controls" 22786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * where "vertical space controls" are the following characters: 22796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U+000A (LF) U+000B (VT) U+000C (FF) U+000D (CR) U+0085 (NEL) U+2028 (LS) U+2029 (PS) 22806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * same as 22826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * TRUE for U+0009 (TAB) and characters with general category "Zs" (space separators) 22846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * except Zero Width Space (ZWSP, U+200B). 22856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions; please see the uchar.h 22876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * file documentation for a detailed comparison. 22886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 22906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 22916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 22926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 22946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a "blank" 22956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 22966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 22976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 22986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 22996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isblank(UChar32 c); 23006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 23016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 23026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is "defined", 23036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * which usually means that it is assigned a character. 23046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for general categories other than "Cn" (other, not assigned), 23056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * i.e., true for all code points mentioned in UnicodeData.txt. 23066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note that non-character code points (e.g., U+FDD0) are not "defined" 23086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (they are Cn), but surrogate code points are "defined" (Cs). 23096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isDefined(). 23116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 23136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is assigned a character 23146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 23166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 23176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalnum 23186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isupper 23196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_islower 23206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_istitle 23216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 23226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 23236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 23246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isdefined(UChar32 c); 23256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 23266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 23276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character is a space character or not. 23286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions; please see the uchar.h 23306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * file documentation for a detailed comparison. 23316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 23336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 23346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 23356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the character to be tested 23376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return true if the character is a space character; false otherwise. 23386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isJavaSpaceChar 23406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isWhitespace 23416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isUWhiteSpace 23426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 23436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 23446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 23456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isspace(UChar32 c); 23466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 23476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 23486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determine if the specified code point is a space character according to Java. 23496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general categories "Z" (separators), 23506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * which does not include control codes (e.g., TAB or Line Feed). 23516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isSpaceChar(). 23536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions; please see the uchar.h 23556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * file documentation for a detailed comparison. 23566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 23586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a space character according to Character.isSpaceChar() 23596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isspace 23616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isWhitespace 23626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isUWhiteSpace 23636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 23646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 23656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 23666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isJavaSpaceChar(UChar32 c); 23676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 23686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 23696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified code point is a whitespace character according to Java/ICU. 23706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * A character is considered to be a Java whitespace character if and only 23716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * if it satisfies one of the following criteria: 23726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is a Unicode Separator character (categories "Z" = "Zs" or "Zl" or "Zp"), but is not 23746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * also a non-breaking space (U+00A0 NBSP or U+2007 Figure Space or U+202F Narrow NBSP). 23756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+0009 HORIZONTAL TABULATION. 23766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+000A LINE FEED. 23776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+000B VERTICAL TABULATION. 23786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+000C FORM FEED. 23796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+000D CARRIAGE RETURN. 23806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+001C FILE SEPARATOR. 23816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+001D GROUP SEPARATOR. 23826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+001E RECORD SEPARATOR. 23836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - It is U+001F UNIT SEPARATOR. 23846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This API tries to sync with the semantics of Java's 23866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * java.lang.Character.isWhitespace(), but it may not return 23876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the exact same results because of the Unicode version 23886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * difference. 23896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: Unicode 4.0.1 changed U+200B ZERO WIDTH SPACE from a Space Separator (Zs) 23916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to a Format Control (Cf). Since then, isWhitespace(0x200b) returns false. 23926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See http://www.unicode.org/versions/Unicode4.0.1/ 23936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: There are several ICU whitespace functions; please see the uchar.h 23956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * file documentation for a detailed comparison. 23966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 23976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 23986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a whitespace character according to Java/ICU 23996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isspace 24016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isJavaSpaceChar 24026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isUWhiteSpace 24036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 24046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 24056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 24066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isWhitespace(UChar32 c); 24076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 24086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 24096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a control character 24106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (as defined by this function). 24116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * A control character is one of the following: 24126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - ISO 8-bit control character (U+0000..U+001f and U+007f..U+009f) 24136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - U_CONTROL_CHAR (Cc) 24146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - U_FORMAT_CHAR (Cf) 24156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - U_LINE_SEPARATOR (Zl) 24166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * - U_PARAGRAPH_SEPARATOR (Zp) 24176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 24196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 24206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 24216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 24236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a control character 24246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 24266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isprint 24276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 24286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 24296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 24306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_iscntrl(UChar32 c); 24316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 24326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 24336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is an ISO control code. 24346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for U+0000..U+001f and U+007f..U+009f (general category "Cc"). 24356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isISOControl(). 24376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 24396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is an ISO control code 24406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_iscntrl 24426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.6 24436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 24446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 24456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isISOControl(UChar32 c); 24466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 24476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 24486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a printable character. 24496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for general categories <em>other</em> than "C" (controls). 24506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is a C/POSIX migration function. 24526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See the comments about C/POSIX character classification functions in the 24536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * documentation at the top of this header file. 24546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 24566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a printable character 24576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 24596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_iscntrl 24606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 24616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 24626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 24636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isprint(UChar32 c); 24646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 24656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 24666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the specified code point is a base character. 24676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for general categories "L" (letters), "N" (numbers), 24686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Mc" (spacing combining marks), and "Me" (enclosing marks). 24696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note that this is different from the Unicode definition in 24716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * chapter 3.5, conformance clause D13, 24726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * which defines base characters to be all characters (not Cn) 24736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * that do not graphically combine with preceding characters (M) 24746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and that are neither control (Cc) or format (Cf) characters. 24756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 24776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is a base character according to this function 24786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 24806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 24816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 24826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 24836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 24846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isbase(UChar32 c); 24856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 24866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 24876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the bidirectional category value for the code point, 24886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * which is used in the Unicode bidirectional algorithm 24896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (UAX #9 http://www.unicode.org/reports/tr9/). 24906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note that some <em>unassigned</em> code points have bidi values 24916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * of R or AL because they are in blocks that are reserved 24926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for Right-To-Left scripts. 24936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.getDirectionality() 24956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 24976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the bidirectional category (UCharDirection) value 24986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 24996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharDirection 25006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 25016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UCharDirection U_EXPORT2 25036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charDirection(UChar32 c); 25046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines whether the code point has the Bidi_Mirrored property. 25076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This property is set for characters that are commonly used in 25086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Right-To-Left contexts and need to be displayed with a "mirrored" 25096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * glyph. 25106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isMirrored(). 25126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as UCHAR_BIDI_MIRRORED 25136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 25156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the character has the Bidi_Mirrored property 25166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_BIDI_MIRRORED 25186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 25196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 25216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isMirrored(UChar32 c); 25226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Maps the specified character to a "mirror-image" character. 25256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For characters with the Bidi_Mirrored property, implementations 25266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * sometimes need a "poor man's" mapping to another Unicode 25276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * character (code point) such that the default glyph may serve 25286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as the mirror-image of the default glyph of the specified 25296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * character. This is useful for text conversion to and from 25306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * codepages with visual order, and for displays without glyph 25316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * selection capabilities. 25326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 25346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return another Unicode code point that may serve as a mirror-image 25356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * substitute, or c itself if there is no such mapping or c 25366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * does not have the Bidi_Mirrored property 25376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_BIDI_MIRRORED 25396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isMirrored 25406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 25416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 25436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charMirror(UChar32 c); 25446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Maps the specified character to its paired bracket character. 25476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For Bidi_Paired_Bracket_Type!=None, this is the same as u_charMirror(). 25486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Otherwise c itself is returned. 25496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See http://www.unicode.org/reports/tr9/ 25506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 25526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the paired bracket code point, 25536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or c itself if there is no such mapping 25546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (Bidi_Paired_Bracket_Type=None) 25556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_BIDI_PAIRED_BRACKET 25576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_BIDI_PAIRED_BRACKET_TYPE 25586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charMirror 25596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 52 25606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 25626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getBidiPairedBracket(UChar32 c); 25636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the general category value for the code point. 25666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.getType(). 25686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 25706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the general category (UCharCategory) value 25716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharCategory 25736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 25746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int8_t U_EXPORT2 25766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charType(UChar32 c); 25776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get a single-bit bit set for the general category of a character. 25806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This bit set can be compared bitwise with U_GC_SM_MASK, U_GC_L_MASK, etc. 25816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as U_MASK(u_charType(c)). 25826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 25846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return a single-bit mask corresponding to the general category (UCharCategory) value 25856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charType 25876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharCategory 25886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see U_GC_CN_MASK 25896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 25906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 25916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_GET_GC_MASK(c) U_MASK(u_charType(c)) 25926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 25936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 25946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Callback from u_enumCharTypes(), is called for each contiguous range 25956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * of code points c (where start<=c<limit) 25966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * with the same Unicode general category ("character type"). 25976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 25986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The callback function can stop the enumeration by returning FALSE. 25996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param context an opaque pointer, as passed into utrie_enum() 26016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param start the first code point in a contiguous range with value 26026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param limit one past the last code point in a contiguous range with value 26036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param type the general category for all code points in [start..limit[ 26046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return FALSE to stop the enumeration 26056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 26076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharCategory 26086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_enumCharTypes 26096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 26106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef UBool U_CALLCONV 26116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgUCharEnumTypeRange(const void *context, UChar32 start, UChar32 limit, UCharCategory type); 26126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 26146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Enumerate efficiently all code points with their Unicode general categories. 26156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This is useful for building data structures (e.g., UnicodeSet's), 26176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for enumerating all assigned code points (type!=U_UNASSIGNED), etc. 26186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For each contiguous range of code points with a given general category ("character type"), 26206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the UCharEnumTypeRange function is called. 26216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Adjacent ranges have different types. 26226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The Unicode Standard guarantees that the numeric value of the type is 0..31. 26236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param enumRange a pointer to a function that is called for each contiguous range 26256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * of code points with the same general category 26266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param context an opaque pointer that is passed on to the callback function 26276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 26296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharCategory 26306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharEnumTypeRange 26316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 26326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE void U_EXPORT2 26336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context); 26346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#if !UCONFIG_NO_NORMALIZATION 26366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 26386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the combining class of the code point as specified in UnicodeData.txt. 26396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point of the character 26416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the combining class of the character 26426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 26436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 26446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE uint8_t U_EXPORT2 26456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getCombiningClass(UChar32 c); 26466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif 26486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 26506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the decimal digit value of a decimal digit character. 26516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Such characters have the general category "Nd" (decimal digit numbers) 26526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and a Numeric_Type of Decimal. 26536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unlike ICU releases before 2.6, no digit values are returned for any 26556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Han characters because Han number characters are often used with a special 26566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Chinese-style number format (with characters for powers of 10 in between) 26576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * instead of in decimal-positional notation. 26586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 4 explicitly assigns Han number characters the Numeric_Type 26596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Numeric instead of Decimal. 26606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See Jitterbug 1483 for more details. 26616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Use u_getIntPropertyValue(c, UCHAR_NUMERIC_TYPE) and u_getNumericValue() 26636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for complete numeric Unicode properties. 26646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point for which to get the decimal digit value 26666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the decimal digit value of c, 26676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or -1 if c is not a decimal digit character 26686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_getNumericValue 26706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 26716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 26726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 26736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charDigitValue(UChar32 c); 26746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 26766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the Unicode allocation block that contains the character. 26776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 26796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the block value (UBlockCode) for c 26806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UBlockCode 26826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 26836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 26846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBlockCode U_EXPORT2 26856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgublock_getCode(UChar32 c); 26866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 26876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 26886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Retrieve the name of a Unicode character. 26896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Depending on <code>nameChoice</code>, the character name written 26906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * into the buffer is the "modern" name or the name that was defined 26916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in Unicode version 1.0. 26926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The name contains only "invariant" characters 26936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * like A-Z, 0-9, space, and '-'. 26946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 1.0 names are only retrieved if they are different from the modern 26956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * names and if the data file contains the data for them. gennames may or may 26966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * not be called with a command line option to include 1.0 names in unames.dat. 26976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 26986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param code The character (code point) for which to get the name. 26996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It must be <code>0<=code<=0x10ffff</code>. 27006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice Selector for which name to get. 27016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param buffer Destination address for copying the name. 27026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The name will always be zero-terminated. 27036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If there is no name, then the buffer will be set to the empty string. 27046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param bufferLength <code>==sizeof(buffer)</code> 27056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param pErrorCode Pointer to a UErrorCode variable; 27066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * check for <code>U_SUCCESS()</code> after <code>u_charName()</code> 27076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * returns. 27086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return The length of the name, or 0 if there is no name for this character. 27096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If the bufferLength is less than or equal to the length, then the buffer 27106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * contains the truncated name and the returned length indicates the full 27116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * length of the name. 27126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The length does not include the zero-termination. 27136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharNameChoice 27156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charFromName 27166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_enumCharNames 27176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 27186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 27196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 27206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charName(UChar32 code, UCharNameChoice nameChoice, 27216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org char *buffer, int32_t bufferLength, 27226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UErrorCode *pErrorCode); 27236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 27246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef U_HIDE_DEPRECATED_API 27256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 27266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns an empty string. 27276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Used to return the ISO 10646 comment for a character. 27286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The Unicode ISO_Comment property is deprecated and has no values. 27296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c The character (code point) for which to get the ISO comment. 27316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It must be <code>0<=c<=0x10ffff</code>. 27326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param dest Destination address for copying the comment. 27336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The comment will be zero-terminated if possible. 27346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If there is no comment, then the buffer will be set to the empty string. 27356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param destCapacity <code>==sizeof(dest)</code> 27366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param pErrorCode Pointer to a UErrorCode variable; 27376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * check for <code>U_SUCCESS()</code> after <code>u_getISOComment()</code> 27386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * returns. 27396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return 0 27406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @deprecated ICU 49 27426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 27436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 27446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getISOComment(UChar32 c, 27456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org char *dest, int32_t destCapacity, 27466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UErrorCode *pErrorCode); 27476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif /* U_HIDE_DEPRECATED_API */ 27486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 27496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 27506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Find a Unicode character by its name and return its code point value. 27516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The name is matched exactly and completely. 27526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If the name does not correspond to a code point, <i>pErrorCode</i> 27536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * is set to <code>U_INVALID_CHAR_FOUND</code>. 27546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * A Unicode 1.0 name is matched only if it differs from the modern name. 27556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode names are all uppercase. Extended names are lowercase followed 27566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * by an uppercase hexadecimal number, and within angle brackets. 27576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice Selector for which name to match. 27596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param name The name to match. 27606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param pErrorCode Pointer to a UErrorCode variable 27616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return The Unicode value of the code point with the given name, 27626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or an undefined value if there is no such code point. 27636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharNameChoice 27656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charName 27666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_enumCharNames 27676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 1.7 27686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 27696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 27706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charFromName(UCharNameChoice nameChoice, 27716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org const char *name, 27726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UErrorCode *pErrorCode); 27736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 27746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 27756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Type of a callback function for u_enumCharNames() that gets called 27766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for each Unicode character with the code point value and 27776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the character name. 27786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If such a function returns FALSE, then the enumeration is stopped. 27796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param context The context pointer that was passed to u_enumCharNames(). 27816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param code The Unicode code point for the character with this name. 27826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice Selector for which kind of names is enumerated. 27836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param name The character's name, zero-terminated. 27846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param length The length of the name. 27856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the enumeration should continue, FALSE to stop it. 27866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 27876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharNameChoice 27886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_enumCharNames 27896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 1.7 27906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 27916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgtypedef UBool U_CALLCONV UEnumCharNamesFn(void *context, 27926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UChar32 code, 27936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCharNameChoice nameChoice, 27946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org const char *name, 27956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org int32_t length); 27966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 27976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 27986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Enumerate all assigned Unicode characters between the start and limit 27996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * code points (start inclusive, limit exclusive) and call a function 28006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for each, passing the code point value and the character name. 28016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For Unicode 1.0 names, only those are enumerated that differ from the 28026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * modern names. 28036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param start The first code point in the enumeration range. 28056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param limit One more than the last code point in the enumeration range 28066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (the first one after the range). 28076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param fn The function that is to be called for each character name. 28086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param context An arbitrary pointer that is passed to the function. 28096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice Selector for which kind of names to enumerate. 28106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param pErrorCode Pointer to a UErrorCode variable 28116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCharNameChoice 28136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UEnumCharNamesFn 28146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charName 28156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charFromName 28166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 1.7 28176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 28186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE void U_EXPORT2 28196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_enumCharNames(UChar32 start, UChar32 limit, 28206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UEnumCharNamesFn *fn, 28216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org void *context, 28226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UCharNameChoice nameChoice, 28236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UErrorCode *pErrorCode); 28246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 28256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 28266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Return the Unicode name for a given property, as given in the 28276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode database file PropertyAliases.txt. 28286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition, this function maps the property 28306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_GENERAL_CATEGORY_MASK to the synthetic names "gcm" / 28316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "General_Category_Mask". These names are not in 28326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * PropertyAliases.txt. 28336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param property UProperty selector other than UCHAR_INVALID_CODE. 28356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If out of range, NULL is returned. 28366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice selector for which name to get. If out of range, 28386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * NULL is returned. All properties have a long name. Most 28396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * have a short name, but some do not. Unicode allows for 28406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * additional names; if present these will be returned by 28416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_LONG_PROPERTY_NAME + i, where i=1, 2,... 28426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return a pointer to the name, or NULL if either the 28446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * property or the nameChoice is out of range. If a given 28456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * nameChoice returns NULL, then all larger values of 28466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * nameChoice will return NULL, with one exception: if NULL is 28476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * returned for U_SHORT_PROPERTY_NAME, then 28486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_LONG_PROPERTY_NAME (and higher) may still return a 28496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * non-NULL value. The returned pointer is valid until 28506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_cleanup() is called. 28516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 28536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UPropertyNameChoice 28546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.4 28556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 28566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE const char* U_EXPORT2 28576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getPropertyName(UProperty property, 28586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UPropertyNameChoice nameChoice); 28596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 28606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 28616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Return the UProperty enum for a given property name, as specified 28626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in the Unicode database file PropertyAliases.txt. Short, long, and 28636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * any other variants are recognized. 28646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition, this function maps the synthetic names "gcm" / 28666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "General_Category_Mask" to the property 28676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_GENERAL_CATEGORY_MASK. These names are not in 28686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * PropertyAliases.txt. 28696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param alias the property name to be matched. The name is compared 28716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * using "loose matching" as described in PropertyAliases.txt. 28726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return a UProperty enum, or UCHAR_INVALID_CODE if the given name 28746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * does not match any property. 28756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 28776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.4 28786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 28796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UProperty U_EXPORT2 28806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getPropertyEnum(const char* alias); 28816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 28826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 28836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Return the Unicode name for a given property value, as given in the 28846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode database file PropertyValueAliases.txt. 28856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: Some of the names in PropertyValueAliases.txt can only be 28876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * retrieved using UCHAR_GENERAL_CATEGORY_MASK, not 28886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_GENERAL_CATEGORY. These include: "C" / "Other", "L" / 28896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Letter", "LC" / "Cased_Letter", "M" / "Mark", "N" / "Number", "P" 28906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * / "Punctuation", "S" / "Symbol", and "Z" / "Separator". 28916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param property UProperty selector constant. 28936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 28946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 28956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 28966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If out of range, NULL is returned. 28976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 28986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param value selector for a value for the given property. If out 28996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * of range, NULL is returned. In general, valid values range 29006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * from 0 up to some maximum. There are a few exceptions: 29016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (1.) UCHAR_BLOCK values begin at the non-zero value 29026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UBLOCK_BASIC_LATIN. (2.) UCHAR_CANONICAL_COMBINING_CLASS 29036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * values are not contiguous and range from 0..240. (3.) 29046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_GENERAL_CATEGORY_MASK values are not values of 29056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCharCategory, but rather mask values produced by 29066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_GET_GC_MASK(). This allows grouped categories such as 29076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * [:L:] to be represented. Mask values range 29086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * non-contiguously from 1..U_GC_P_MASK. 29096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param nameChoice selector for which name to get. If out of range, 29116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * NULL is returned. All values have a long name. Most have 29126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * a short name, but some do not. Unicode allows for 29136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * additional names; if present these will be returned by 29146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_LONG_PROPERTY_NAME + i, where i=1, 2,... 29156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 29166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return a pointer to the name, or NULL if either the 29176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * property or the nameChoice is out of range. If a given 29186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * nameChoice returns NULL, then all larger values of 29196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * nameChoice will return NULL, with one exception: if NULL is 29206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * returned for U_SHORT_PROPERTY_NAME, then 29216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * U_LONG_PROPERTY_NAME (and higher) may still return a 29226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * non-NULL value. The returned pointer is valid until 29236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_cleanup() is called. 29246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 29266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UPropertyNameChoice 29276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.4 29286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 29296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE const char* U_EXPORT2 29306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getPropertyValueName(UProperty property, 29316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org int32_t value, 29326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org UPropertyNameChoice nameChoice); 29336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 29346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 29356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Return the property value integer for a given value name, as 29366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * specified in the Unicode database file PropertyValueAliases.txt. 29376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Short, long, and any other variants are recognized. 29386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note: Some of the names in PropertyValueAliases.txt will only be 29406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * recognized with UCHAR_GENERAL_CATEGORY_MASK, not 29416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UCHAR_GENERAL_CATEGORY. These include: "C" / "Other", "L" / 29426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Letter", "LC" / "Cased_Letter", "M" / "Mark", "N" / "Number", "P" 29436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * / "Punctuation", "S" / "Symbol", and "Z" / "Separator". 29446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param property UProperty selector constant. 29466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Must be UCHAR_BINARY_START<=which<UCHAR_BINARY_LIMIT 29476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_INT_START<=which<UCHAR_INT_LIMIT 29486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or UCHAR_MASK_START<=which<UCHAR_MASK_LIMIT. 29496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If out of range, UCHAR_INVALID_CODE is returned. 29506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param alias the value name to be matched. The name is compared 29526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * using "loose matching" as described in 29536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * PropertyValueAliases.txt. 29546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return a value integer or UCHAR_INVALID_CODE if the given name 29566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * does not match any value of the given property, or if the 29576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * property is invalid. Note: UCHAR_GENERAL_CATEGORY_MASK values 29586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * are not values of UCharCategory, but rather mask values 29596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * produced by U_GET_GC_MASK(). This allows grouped 29606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * categories such as [:L:] to be represented. 29616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UProperty 29636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.4 29646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 29656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 29666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getPropertyValueEnum(UProperty property, 29676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org const char* alias); 29686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 29696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 29706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character is permissible as the 29716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * first character in an identifier according to Unicode 29726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (The Unicode Standard, Version 3.0, chapter 5.16 Identifiers). 29736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general categories "L" (letters) and "Nl" (letter numbers). 29746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isUnicodeIdentifierStart(). 29766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as UCHAR_ID_START 29776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 29796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point may start an identifier 29806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_ID_START 29826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 29836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDPart 29846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 29856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 29866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 29876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isIDStart(UChar32 c); 29886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 29896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 29906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character is permissible 29916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in an identifier according to Java. 29926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general categories "L" (letters), 29936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Nl" (letter numbers), "Nd" (decimal digits), 29946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * "Mc" and "Mn" (combining marks), "Pc" (connecting punctuation), and 29956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_isIDIgnorable(c). 29966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 29976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isUnicodeIdentifierPart(). 29986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Almost the same as Unicode's ID_Continue (UCHAR_ID_CONTINUE) 29996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * except that Unicode recommends to ignore Cf which is less than 30006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * u_isIDIgnorable(c). 30016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 30036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point may occur in an identifier according to Java 30046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_ID_CONTINUE 30066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDStart 30076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDIgnorable 30086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 30096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 30106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 30116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isIDPart(UChar32 c); 30126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 30136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 30146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character should be regarded 30156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as an ignorable character in an identifier, 30166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * according to Java. 30176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * True for characters with general category "Cf" (format controls) as well as 30186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * non-whitespace ISO controls 30196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (U+0000..U+0008, U+000E..U+001B, U+007F..U+009F). 30206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isIdentifierIgnorable(). 30226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Note that Unicode just recommends to ignore Cf (format controls). 30246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 30266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point is ignorable in identifiers according to Java 30276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_DEFAULT_IGNORABLE_CODE_POINT 30296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDStart 30306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDPart 30316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 30326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 30336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 30346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isIDIgnorable(UChar32 c); 30356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 30366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 30376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character is permissible as the 30386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * first character in a Java identifier. 30396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to u_isIDStart(c), true for characters with 30406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * general categories "Sc" (currency symbols) and "Pc" (connecting punctuation). 30416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isJavaIdentifierStart(). 30436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 30456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point may start a Java identifier 30466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isJavaIDPart 30486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 30496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDStart 30506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 30516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 30526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 30536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isJavaIDStart(UChar32 c); 30546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 30556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 30566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines if the specified character is permissible 30576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in a Java identifier. 30586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In addition to u_isIDPart(c), true for characters with 30596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * general category "Sc" (currency symbols). 30606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.isJavaIdentifierPart(). 30626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be tested 30646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return TRUE if the code point may occur in a Java identifier 30656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDIgnorable 30676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isJavaIDStart 30686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isalpha 30696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 30706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isIDPart 30716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 30726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 30736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UBool U_EXPORT2 30746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_isJavaIDPart(UChar32 c); 30756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 30766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 30776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The given character is mapped to its lowercase equivalent according to 30786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UnicodeData.txt; if the character has no lowercase equivalent, the character 30796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * itself is returned. 30806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.toLowerCase(). 30826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This function only returns the simple, single-code point case mapping. 30846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings should be used whenever possible because they produce 30856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * better results by working on whole strings. 30866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * They take into account the string context and the language and can map 30876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to a result string with a different length as appropriate. 30886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings are applied by the string case mapping functions, 30896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * see ustring.h and the UnicodeString class. 30906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See also the User Guide chapter on C/POSIX migration: 30916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * http://icu-project.org/userguide/posix.html#case_mappings 30926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 30936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 30946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the Simple_Lowercase_Mapping of the code point, if any; 30956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * otherwise the code point itself. 30966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 30976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 30986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 30996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_tolower(UChar32 c); 31006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 31026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The given character is mapped to its uppercase equivalent according to UnicodeData.txt; 31036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * if the character has no uppercase equivalent, the character itself is 31046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * returned. 31056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.toUpperCase(). 31076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This function only returns the simple, single-code point case mapping. 31096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings should be used whenever possible because they produce 31106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * better results by working on whole strings. 31116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * They take into account the string context and the language and can map 31126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to a result string with a different length as appropriate. 31136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings are applied by the string case mapping functions, 31146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * see ustring.h and the UnicodeString class. 31156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See also the User Guide chapter on C/POSIX migration: 31166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * http://icu-project.org/userguide/posix.html#case_mappings 31176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 31196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the Simple_Uppercase_Mapping of the code point, if any; 31206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * otherwise the code point itself. 31216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 31226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 31236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 31246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_toupper(UChar32 c); 31256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 31276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The given character is mapped to its titlecase equivalent 31286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * according to UnicodeData.txt; 31296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * if none is defined, the character itself is returned. 31306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.toTitleCase(). 31326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This function only returns the simple, single-code point case mapping. 31346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings should be used whenever possible because they produce 31356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * better results by working on whole strings. 31366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * They take into account the string context and the language and can map 31376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to a result string with a different length as appropriate. 31386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings are applied by the string case mapping functions, 31396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * see ustring.h and the UnicodeString class. 31406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See also the User Guide chapter on C/POSIX migration: 31416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * http://icu-project.org/userguide/posix.html#case_mappings 31426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 31446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the Simple_Titlecase_Mapping of the code point, if any; 31456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * otherwise the code point itself. 31466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 31476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 31486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 31496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_totitle(UChar32 c); 31506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** Option value for case folding: use default mappings defined in CaseFolding.txt. @stable ICU 2.0 */ 31526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_FOLD_CASE_DEFAULT 0 31536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 31556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Option value for case folding: 31566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Use the modified set of mappings provided in CaseFolding.txt to handle dotted I 31586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and dotless i appropriately for Turkic languages (tr, az). 31596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Before Unicode 3.2, CaseFolding.txt contains mappings marked with 'I' that 31616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * are to be included for default mappings and 31626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * excluded for the Turkic-specific mappings. 31636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Unicode 3.2 CaseFolding.txt instead contains mappings marked with 'T' that 31656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * are to be excluded for default mappings and 31666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * included for the Turkic-specific mappings. 31676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 31696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 31706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define U_FOLD_CASE_EXCLUDE_SPECIAL_I 1 31716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 31736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The given character is mapped to its case folding equivalent according to 31746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * UnicodeData.txt and CaseFolding.txt; 31756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * if the character has no case folding equivalent, the character 31766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * itself is returned. 31776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This function only returns the simple, single-code point case mapping. 31796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings should be used whenever possible because they produce 31806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * better results by working on whole strings. 31816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * They take into account the string context and the language and can map 31826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * to a result string with a different length as appropriate. 31836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Full case mappings are applied by the string case mapping functions, 31846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * see ustring.h and the UnicodeString class. 31856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See also the User Guide chapter on C/POSIX migration: 31866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * http://icu-project.org/userguide/posix.html#case_mappings 31876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 31886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c the code point to be mapped 31896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param options Either U_FOLD_CASE_DEFAULT or U_FOLD_CASE_EXCLUDE_SPECIAL_I 31906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the Simple_Case_Folding of the code point, if any; 31916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * otherwise the code point itself. 31926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 31936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 31946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 31956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_foldCase(UChar32 c, uint32_t options); 31966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 31976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 31986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Returns the decimal digit value of the code point in the 31996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * specified radix. 32006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If the radix is not in the range <code>2<=radix<=36</code> or if the 32026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * value of <code>c</code> is not a valid digit in the specified 32036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * radix, <code>-1</code> is returned. A character is a valid digit 32046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * if at least one of the following is true: 32056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <ul> 32066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <li>The character has a decimal digit value. 32076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Such characters have the general category "Nd" (decimal digit numbers) 32086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * and a Numeric_Type of Decimal. 32096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In this case the value is the character's decimal digit value.</li> 32106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <li>The character is one of the uppercase Latin letters 32116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <code>'A'</code> through <code>'Z'</code>. 32126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In this case the value is <code>c-'A'+10</code>.</li> 32136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <li>The character is one of the lowercase Latin letters 32146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <code>'a'</code> through <code>'z'</code>. 32156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * In this case the value is <code>ch-'a'+10</code>.</li> 32166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <li>Latin letters from both the ASCII range (0061..007A, 0041..005A) 32176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * as well as from the Fullwidth ASCII range (FF41..FF5A, FF21..FF3A) 32186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * are recognized.</li> 32196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * </ul> 32206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.digit(). 32226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param ch the code point to be tested. 32246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param radix the radix. 32256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the numeric value represented by the character in the 32266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * specified radix, 32276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or -1 if there is no value or if the value exceeds the radix. 32286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see UCHAR_NUMERIC_TYPE 32306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_forDigit 32316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charDigitValue 32326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 32336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 32346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 32356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 32366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_digit(UChar32 ch, int8_t radix); 32376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 32386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 32396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Determines the character representation for a specific digit in 32406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the specified radix. If the value of <code>radix</code> is not a 32416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * valid radix, or the value of <code>digit</code> is not a valid 32426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * digit in the specified radix, the null character 32436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * (<code>U+0000</code>) is returned. 32446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <p> 32456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The <code>radix</code> argument is valid if it is greater than or 32466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * equal to 2 and less than or equal to 36. 32476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The <code>digit</code> argument is valid if 32486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <code>0 <= digit < radix</code>. 32496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <p> 32506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If the digit is less than 10, then 32516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <code>'0' + digit</code> is returned. Otherwise, the value 32526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * <code>'a' + digit - 10</code> is returned. 32536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Same as java.lang.Character.forDigit(). 32556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param digit the number to convert to a character. 32576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param radix the radix. 32586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return the <code>char</code> representation of the specified digit 32596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * in the specified radix. 32606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_digit 32626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_charDigitValue 32636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @see u_isdigit 32646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 32656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 32666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE UChar32 U_EXPORT2 32676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_forDigit(int32_t digit, int8_t radix); 32686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 32696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 32706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the "age" of the code point. 32716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The "age" is the Unicode version when the code point was first 32726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * designated (as a non-character or for Private Use) 32736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or assigned a character. 32746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * This can be useful to avoid emitting code points to receiving 32756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * processes that do not accept newer characters. 32766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The data is from the UCD file DerivedAge.txt. 32776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c The code point. 32796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param versionArray The Unicode version number array, to be filled in. 32806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.1 32826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 32836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE void U_EXPORT2 32846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_charAge(UChar32 c, UVersionInfo versionArray); 32856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 32866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 32876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Gets the Unicode version information. 32886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The version array is filled in with the version information 32896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * for the Unicode standard that is currently used by ICU. 32906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * For example, Unicode version 3.1.1 is represented as an array with 32916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the values { 3, 1, 1, 0 }. 32926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 32936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param versionArray an output array that will be filled in with 32946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * the Unicode version number 32956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.0 32966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 32976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE void U_EXPORT2 32986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getUnicodeVersion(UVersionInfo versionArray); 32996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 33006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#if !UCONFIG_NO_NORMALIZATION 33016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 33026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Get the FC_NFKC_Closure property string for a character. 33036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * See Unicode Standard Annex #15 for details, search for "FC_NFKC_Closure" 33046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * or for "FNC": http://www.unicode.org/reports/tr15/ 33056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 33066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param c The character (code point) for which to get the FC_NFKC_Closure string. 33076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * It must be <code>0<=c<=0x10ffff</code>. 33086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param dest Destination address for copying the string. 33096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The string will be zero-terminated if possible. 33106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If there is no FC_NFKC_Closure string, 33116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * then the buffer will be set to the empty string. 33126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param destCapacity <code>==sizeof(dest)</code> 33136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @param pErrorCode Pointer to a UErrorCode variable. 33146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @return The length of the string, or 0 if there is no FC_NFKC_Closure string for this character. 33156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * If the destCapacity is less than or equal to the length, then the buffer 33166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * contains the truncated name and the returned length indicates the full 33176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * length of the name. 33186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * The length does not include the zero-termination. 33196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * 33206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * @stable ICU 2.2 33216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 33226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_STABLE int32_t U_EXPORT2 33236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgu_getFC_NFKC_Closure(UChar32 c, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode); 33246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 33256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif 33266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 33276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 33286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgU_CDECL_END 33296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 33306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif /*_UCHAR*/ 33316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*eof*/ 3332