/* * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. */ /* /** ******************************************************************************* * Copyright (C) 2004, International Business Machines Corporation and * * others. All Rights Reserved. * ******************************************************************************* */ // CHANGELOG // 2005-05-19 Edward Wang // - copy this file from icu4jsrc_3_2/src/com/ibm/icu/lang/UCharacterEnums.java // - move from package com.ibm.icu.lang to package sun.net.idn // package sun.net.idn; /** * A container for the different 'enumerated types' used by UCharacter. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ class UCharacterEnums { /** This is just a namespace, it is not instantiatable. */ private UCharacterEnums() {}; /** * 'Enum' for the CharacterCategory constants. These constants are * compatible in name <b>but not in value</b> with those defined in * <code>java.lang.Character</code>. * @see UCharacterCategory * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static interface ECharacterCategory { /** * Unassigned character type * @stable ICU 2.1 */ public static final int UNASSIGNED = 0; /** * Character type Cn * Not Assigned (no characters in [UnicodeData.txt] have this property) * @stable ICU 2.6 */ public static final int GENERAL_OTHER_TYPES = 0; /** * Character type Lu * @stable ICU 2.1 */ public static final int UPPERCASE_LETTER = 1; /** * Character type Ll * @stable ICU 2.1 */ public static final int LOWERCASE_LETTER = 2; /** * Character type Lt * @stable ICU 2.1 */ public static final int TITLECASE_LETTER = 3; /** * Character type Lm * @stable ICU 2.1 */ public static final int MODIFIER_LETTER = 4; /** * Character type Lo * @stable ICU 2.1 */ public static final int OTHER_LETTER = 5; /** * Character type Mn * @stable ICU 2.1 */ public static final int NON_SPACING_MARK = 6; /** * Character type Me * @stable ICU 2.1 */ public static final int ENCLOSING_MARK = 7; /** * Character type Mc * @stable ICU 2.1 */ public static final int COMBINING_SPACING_MARK = 8; /** * Character type Nd * @stable ICU 2.1 */ public static final int DECIMAL_DIGIT_NUMBER = 9; /** * Character type Nl * @stable ICU 2.1 */ public static final int LETTER_NUMBER = 10; /** * Character type No * @stable ICU 2.1 */ public static final int OTHER_NUMBER = 11; /** * Character type Zs * @stable ICU 2.1 */ public static final int SPACE_SEPARATOR = 12; /** * Character type Zl * @stable ICU 2.1 */ public static final int LINE_SEPARATOR = 13; /** * Character type Zp * @stable ICU 2.1 */ public static final int PARAGRAPH_SEPARATOR = 14; /** * Character type Cc * @stable ICU 2.1 */ public static final int CONTROL = 15; /** * Character type Cf * @stable ICU 2.1 */ public static final int FORMAT = 16; /** * Character type Co * @stable ICU 2.1 */ public static final int PRIVATE_USE = 17; /** * Character type Cs * @stable ICU 2.1 */ public static final int SURROGATE = 18; /** * Character type Pd * @stable ICU 2.1 */ public static final int DASH_PUNCTUATION = 19; /** * Character type Ps * @stable ICU 2.1 */ public static final int START_PUNCTUATION = 20; /** * Character type Pe * @stable ICU 2.1 */ public static final int END_PUNCTUATION = 21; /** * Character type Pc * @stable ICU 2.1 */ public static final int CONNECTOR_PUNCTUATION = 22; /** * Character type Po * @stable ICU 2.1 */ public static final int OTHER_PUNCTUATION = 23; /** * Character type Sm * @stable ICU 2.1 */ public static final int MATH_SYMBOL = 24; /** * Character type Sc * @stable ICU 2.1 */ public static final int CURRENCY_SYMBOL = 25; /** * Character type Sk * @stable ICU 2.1 */ public static final int MODIFIER_SYMBOL = 26; /** * Character type So * @stable ICU 2.1 */ public static final int OTHER_SYMBOL = 27; /** * Character type Pi * @see #INITIAL_QUOTE_PUNCTUATION * @stable ICU 2.1 */ public static final int INITIAL_PUNCTUATION = 28; /** * Character type Pi * This name is compatible with java.lang.Character's name for this type. * @see #INITIAL_PUNCTUATION * @draft ICU 2.8 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final int INITIAL_QUOTE_PUNCTUATION = 28; /** * Character type Pf * @see #FINAL_QUOTE_PUNCTUATION * @stable ICU 2.1 */ public static final int FINAL_PUNCTUATION = 29; /** * Character type Pf * This name is compatible with java.lang.Character's name for this type. * @see #FINAL_PUNCTUATION * @draft ICU 2.8 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final int FINAL_QUOTE_PUNCTUATION = 29; /** * Character type count * @stable ICU 2.1 */ public static final int CHAR_CATEGORY_COUNT = 30; } /** * 'Enum' for the CharacterDirection constants. There are two sets * of names, those used in ICU, and those used in the JDK. The * JDK constants are compatible in name <b>but not in value</b> * with those defined in <code>java.lang.Character</code>. * @see UCharacterDirection * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static interface ECharacterDirection { /** * Directional type L * @stable ICU 2.1 */ public static final int LEFT_TO_RIGHT = 0; /** * JDK-compatible synonum for LEFT_TO_RIGHT. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_LEFT_TO_RIGHT = (byte)LEFT_TO_RIGHT; /** * Directional type R * @stable ICU 2.1 */ public static final int RIGHT_TO_LEFT = 1; /** * JDK-compatible synonum for RIGHT_TO_LEFT. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_RIGHT_TO_LEFT = (byte)RIGHT_TO_LEFT; /** * Directional type EN * @stable ICU 2.1 */ public static final int EUROPEAN_NUMBER = 2; /** * JDK-compatible synonum for EUROPEAN_NUMBER. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_EUROPEAN_NUMBER = (byte)EUROPEAN_NUMBER; /** * Directional type ES * @stable ICU 2.1 */ public static final int EUROPEAN_NUMBER_SEPARATOR = 3; /** * JDK-compatible synonum for EUROPEAN_NUMBER_SEPARATOR. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_SEPARATOR = (byte)EUROPEAN_NUMBER_SEPARATOR; /** * Directional type ET * @stable ICU 2.1 */ public static final int EUROPEAN_NUMBER_TERMINATOR = 4; /** * JDK-compatible synonum for EUROPEAN_NUMBER_TERMINATOR. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_EUROPEAN_NUMBER_TERMINATOR = (byte)EUROPEAN_NUMBER_TERMINATOR; /** * Directional type AN * @stable ICU 2.1 */ public static final int ARABIC_NUMBER = 5; /** * JDK-compatible synonum for ARABIC_NUMBER. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_ARABIC_NUMBER = (byte)ARABIC_NUMBER; /** * Directional type CS * @stable ICU 2.1 */ public static final int COMMON_NUMBER_SEPARATOR = 6; /** * JDK-compatible synonum for COMMON_NUMBER_SEPARATOR. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_COMMON_NUMBER_SEPARATOR = (byte)COMMON_NUMBER_SEPARATOR; /** * Directional type B * @stable ICU 2.1 */ public static final int BLOCK_SEPARATOR = 7; /** * JDK-compatible synonum for BLOCK_SEPARATOR. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_PARAGRAPH_SEPARATOR = (byte)BLOCK_SEPARATOR; /** * Directional type S * @stable ICU 2.1 */ public static final int SEGMENT_SEPARATOR = 8; /** * JDK-compatible synonum for SEGMENT_SEPARATOR. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_SEGMENT_SEPARATOR = (byte)SEGMENT_SEPARATOR; /** * Directional type WS * @stable ICU 2.1 */ public static final int WHITE_SPACE_NEUTRAL = 9; /** * JDK-compatible synonum for WHITE_SPACE_NEUTRAL. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_WHITESPACE = (byte)WHITE_SPACE_NEUTRAL; /** * Directional type ON * @stable ICU 2.1 */ public static final int OTHER_NEUTRAL = 10; /** * JDK-compatible synonum for OTHER_NEUTRAL. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_OTHER_NEUTRALS = (byte)OTHER_NEUTRAL; /** * Directional type LRE * @stable ICU 2.1 */ public static final int LEFT_TO_RIGHT_EMBEDDING = 11; /** * JDK-compatible synonum for LEFT_TO_RIGHT_EMBEDDING. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_EMBEDDING = (byte)LEFT_TO_RIGHT_EMBEDDING; /** * Directional type LRO * @stable ICU 2.1 */ public static final int LEFT_TO_RIGHT_OVERRIDE = 12; /** * JDK-compatible synonum for LEFT_TO_RIGHT_OVERRIDE. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_LEFT_TO_RIGHT_OVERRIDE = (byte)LEFT_TO_RIGHT_OVERRIDE; /** * Directional type AL * @stable ICU 2.1 */ public static final int RIGHT_TO_LEFT_ARABIC = 13; /** * JDK-compatible synonum for RIGHT_TO_LEFT_ARABIC. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_ARABIC = (byte)RIGHT_TO_LEFT_ARABIC; /** * Directional type RLE * @stable ICU 2.1 */ public static final int RIGHT_TO_LEFT_EMBEDDING = 14; /** * JDK-compatible synonum for RIGHT_TO_LEFT_EMBEDDING. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_EMBEDDING = (byte)RIGHT_TO_LEFT_EMBEDDING; /** * Directional type RLO * @stable ICU 2.1 */ public static final int RIGHT_TO_LEFT_OVERRIDE = 15; /** * JDK-compatible synonum for RIGHT_TO_LEFT_OVERRIDE. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_RIGHT_TO_LEFT_OVERRIDE = (byte)RIGHT_TO_LEFT_OVERRIDE; /** * Directional type PDF * @stable ICU 2.1 */ public static final int POP_DIRECTIONAL_FORMAT = 16; /** * JDK-compatible synonum for POP_DIRECTIONAL_FORMAT. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_POP_DIRECTIONAL_FORMAT = (byte)POP_DIRECTIONAL_FORMAT; /** * Directional type NSM * @stable ICU 2.1 */ public static final int DIR_NON_SPACING_MARK = 17; /** * JDK-compatible synonum for DIR_NON_SPACING_MARK. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_NON_SPACING_MARK = (byte)DIR_NON_SPACING_MARK; /** * Directional type BN * @stable ICU 2.1 */ public static final int BOUNDARY_NEUTRAL = 18; /** * JDK-compatible synonum for BOUNDARY_NEUTRAL. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_BOUNDARY_NEUTRAL = (byte)BOUNDARY_NEUTRAL; /** * Number of directional types * @stable ICU 2.1 */ public static final int CHAR_DIRECTION_COUNT = 19; /** * Undefined bidirectional character type. Undefined <code>char</code> * values have undefined directionality in the Unicode specification. * @draft ICU 3.0 * @deprecated This is a draft API and might change in a future release of ICU. */ public static final byte DIRECTIONALITY_UNDEFINED = -1; } }