1 /* GENERATED SOURCE. DO NOT MODIFY. */ 2 // © 2016 and later: Unicode, Inc. and others. 3 // License & terms of use: http://www.unicode.org/copyright.html#License 4 /* 5 ******************************************************************************* 6 * Copyright (C) 1996-2007, International Business Machines Corporation and * 7 * others. All Rights Reserved. * 8 ******************************************************************************* 9 */ 10 11 package ohos.global.icu.text; 12 13 /** 14 * An interface defining constants for the Standard Compression Scheme 15 * for Unicode (SCSU) as outlined in <A 16 * HREF="http://www.unicode.org/unicode/reports/tr6">Unicode Technical 17 * Report #6</A>. 18 * 19 * @author Stephen F. Booth 20 * @version 1.1 05 Aug 99 21 * @version 1.0 26 Jul 99 22 */ 23 interface SCSU 24 { 25 //========================== 26 // Generic window shift 27 //========================== 28 final static int COMPRESSIONOFFSET = 0x80; 29 30 //========================== 31 // Number of windows 32 //========================== 33 final static int NUMWINDOWS = 8; 34 final static int NUMSTATICWINDOWS = 8; 35 36 //========================== 37 // Indicates a window index is invalid 38 //========================== 39 final static int INVALIDWINDOW = -1; 40 41 //========================== 42 // Indicates a character doesn't exist in input (past end of buffer) 43 //========================== 44 final static int INVALIDCHAR = -1; 45 46 //========================== 47 // Compression modes 48 //========================== 49 final static int SINGLEBYTEMODE = 0; 50 final static int UNICODEMODE = 1; 51 52 //========================== 53 // Maximum value for a window's index 54 //========================== 55 final static int MAXINDEX = 0xFF; 56 57 //========================== 58 // Reserved index value (characters belongs to first block) 59 //========================== 60 final static int RESERVEDINDEX = 0x00; 61 62 //========================== 63 // Indices for scripts which cross a half-block boundary 64 //========================== 65 final static int LATININDEX = 0xF9; 66 final static int IPAEXTENSIONINDEX = 0xFA; 67 final static int GREEKINDEX = 0xFB; 68 final static int ARMENIANINDEX = 0xFC; 69 final static int HIRAGANAINDEX = 0xFD; 70 final static int KATAKANAINDEX = 0xFE; 71 final static int HALFWIDTHKATAKANAINDEX = 0xFF; 72 73 //========================== 74 // Single-byte mode tags 75 //========================== 76 final static int SDEFINEX = 0x0B; 77 final static int SRESERVED = 0x0C; // reserved value 78 final static int SQUOTEU = 0x0E; 79 final static int SCHANGEU = 0x0F; 80 81 final static int SQUOTE0 = 0x01; 82 final static int SQUOTE1 = 0x02; 83 final static int SQUOTE2 = 0x03; 84 final static int SQUOTE3 = 0x04; 85 final static int SQUOTE4 = 0x05; 86 final static int SQUOTE5 = 0x06; 87 final static int SQUOTE6 = 0x07; 88 final static int SQUOTE7 = 0x08; 89 90 final static int SCHANGE0 = 0x10; 91 final static int SCHANGE1 = 0x11; 92 final static int SCHANGE2 = 0x12; 93 final static int SCHANGE3 = 0x13; 94 final static int SCHANGE4 = 0x14; 95 final static int SCHANGE5 = 0x15; 96 final static int SCHANGE6 = 0x16; 97 final static int SCHANGE7 = 0x17; 98 99 final static int SDEFINE0 = 0x18; 100 final static int SDEFINE1 = 0x19; 101 final static int SDEFINE2 = 0x1A; 102 final static int SDEFINE3 = 0x1B; 103 final static int SDEFINE4 = 0x1C; 104 final static int SDEFINE5 = 0x1D; 105 final static int SDEFINE6 = 0x1E; 106 final static int SDEFINE7 = 0x1F; 107 108 //========================== 109 // Unicode mode tags 110 //========================== 111 final static int UCHANGE0 = 0xE0; 112 final static int UCHANGE1 = 0xE1; 113 final static int UCHANGE2 = 0xE2; 114 final static int UCHANGE3 = 0xE3; 115 final static int UCHANGE4 = 0xE4; 116 final static int UCHANGE5 = 0xE5; 117 final static int UCHANGE6 = 0xE6; 118 final static int UCHANGE7 = 0xE7; 119 120 final static int UDEFINE0 = 0xE8; 121 final static int UDEFINE1 = 0xE9; 122 final static int UDEFINE2 = 0xEA; 123 final static int UDEFINE3 = 0xEB; 124 final static int UDEFINE4 = 0xEC; 125 final static int UDEFINE5 = 0xED; 126 final static int UDEFINE6 = 0xEE; 127 final static int UDEFINE7 = 0xEF; 128 129 final static int UQUOTEU = 0xF0; 130 final static int UDEFINEX = 0xF1; 131 final static int URESERVED = 0xF2; // reserved value 132 133 134 //========================== 135 // Class variables 136 //========================== 137 138 /** For window offset mapping */ 139 final static int [] sOffsetTable = { 140 // table generated by CompressionTableGenerator 141 0x0, 0x80, 0x100, 0x180, 0x200, 0x280, 0x300, 0x380, 0x400, 142 0x480, 0x500, 0x580, 0x600, 0x680, 0x700, 0x780, 0x800, 0x880, 143 0x900, 0x980, 0xa00, 0xa80, 0xb00, 0xb80, 0xc00, 0xc80, 0xd00, 144 0xd80, 0xe00, 0xe80, 0xf00, 0xf80, 0x1000, 0x1080, 0x1100, 145 0x1180, 0x1200, 0x1280, 0x1300, 0x1380, 0x1400, 0x1480, 146 0x1500, 0x1580, 0x1600, 0x1680, 0x1700, 0x1780, 0x1800, 147 0x1880, 0x1900, 0x1980, 0x1a00, 0x1a80, 0x1b00, 0x1b80, 148 0x1c00, 0x1c80, 0x1d00, 0x1d80, 0x1e00, 0x1e80, 0x1f00, 149 0x1f80, 0x2000, 0x2080, 0x2100, 0x2180, 0x2200, 0x2280, 150 0x2300, 0x2380, 0x2400, 0x2480, 0x2500, 0x2580, 0x2600, 151 0x2680, 0x2700, 0x2780, 0x2800, 0x2880, 0x2900, 0x2980, 152 0x2a00, 0x2a80, 0x2b00, 0x2b80, 0x2c00, 0x2c80, 0x2d00, 153 0x2d80, 0x2e00, 0x2e80, 0x2f00, 0x2f80, 0x3000, 0x3080, 154 0x3100, 0x3180, 0x3200, 0x3280, 0x3300, 0x3380, 0xe000, 155 0xe080, 0xe100, 0xe180, 0xe200, 0xe280, 0xe300, 0xe380, 156 0xe400, 0xe480, 0xe500, 0xe580, 0xe600, 0xe680, 0xe700, 157 0xe780, 0xe800, 0xe880, 0xe900, 0xe980, 0xea00, 0xea80, 158 0xeb00, 0xeb80, 0xec00, 0xec80, 0xed00, 0xed80, 0xee00, 159 0xee80, 0xef00, 0xef80, 0xf000, 0xf080, 0xf100, 0xf180, 160 0xf200, 0xf280, 0xf300, 0xf380, 0xf400, 0xf480, 0xf500, 161 0xf580, 0xf600, 0xf680, 0xf700, 0xf780, 0xf800, 0xf880, 162 0xf900, 0xf980, 0xfa00, 0xfa80, 0xfb00, 0xfb80, 0xfc00, 163 0xfc80, 0xfd00, 0xfd80, 0xfe00, 0xfe80, 0xff00, 0xff80, 0x0, 164 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 165 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 166 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 167 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 168 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 169 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 170 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0x250, 0x370, 171 0x530, 0x3040, 0x30a0, 0xff60 172 }; 173 174 /** Static compression window offsets */ 175 final static int [] sOffsets = { 176 0x0000, // for quoting single-byte mode tags 177 0x0080, // Latin-1 Supplement 178 0x0100, // Latin Extended-A 179 0x0300, // Combining Diacritical Marks 180 0x2000, // General Punctuation 181 0x2080, // Curency Symbols 182 0x2100, // Letterlike Symbols and Number Forms 183 0x3000 // CJK Symbols and Punctuation 184 }; 185 186 } 187 188