1 /*
2  * This file was generated automatically - don't edit it.
3  * File contains iconv CCS tables for iso_8859_7 encoding.
4  */
5 
6 #include "ccsbi.h"
7 
8 #if defined (ICONV_TO_UCS_CCS_ISO_8859_7) \
9  || defined (ICONV_FROM_UCS_CCS_ISO_8859_7)
10 
11 #include <_ansi.h>
12 #include <sys/types.h>
13 #include <sys/param.h>
14 #include "ccs.h"
15 #include "ccsnames.h"
16 
17 #if (_BYTE_ORDER == _LITTLE_ENDIAN)
18 #  define W(word) (word) & 0xFF, (word) >> 8
19 #elif (_BYTE_ORDER == _BIG_ENDIAN)
20 #  define W(word) (word) >> 8, (word) & 0xFF
21 #else
22 #  error "Unknown byte order."
23 #endif
24 
25 /*
26  * 8-bit iso_8859_7 -> UCS table (512 bytes).
27  * ======================================================================
28  */
29 #if defined (ICONV_TO_UCS_CCS_ISO_8859_7)
30 
31 static const __uint16_t
32 to_ucs_speed_iso_8859_7[] =
33 {
34 	0x0000,0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007,
35 	0x0008,0x0009,0x000A,0x000B,0x000C,0x000D,0x000E,0x000F,
36 	0x0010,0x0011,0x0012,0x0013,0x0014,0x0015,0x0016,0x0017,
37 	0x0018,0x0019,0x001A,0x001B,0x001C,0x001D,0x001E,0x001F,
38 	0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0027,
39 	0x0028,0x0029,0x002A,0x002B,0x002C,0x002D,0x002E,0x002F,
40 	0x0030,0x0031,0x0032,0x0033,0x0034,0x0035,0x0036,0x0037,
41 	0x0038,0x0039,0x003A,0x003B,0x003C,0x003D,0x003E,0x003F,
42 	0x0040,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047,
43 	0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F,
44 	0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057,
45 	0x0058,0x0059,0x005A,0x005B,0x005C,0x005D,0x005E,0x005F,
46 	0x0060,0x0061,0x0062,0x0063,0x0064,0x0065,0x0066,0x0067,
47 	0x0068,0x0069,0x006A,0x006B,0x006C,0x006D,0x006E,0x006F,
48 	0x0070,0x0071,0x0072,0x0073,0x0074,0x0075,0x0076,0x0077,
49 	0x0078,0x0079,0x007A,0x007B,0x007C,0x007D,0x007E,0x007F,
50 	0x0080,0x0081,0x0082,0x0083,0x0084,0x0085,0x0086,0x0087,
51 	0x0088,0x0089,0x008A,0x008B,0x008C,0x008D,0x008E,0x008F,
52 	0x0090,0x0091,0x0092,0x0093,0x0094,0x0095,0x0096,0x0097,
53 	0x0098,0x0099,0x009A,0x009B,0x009C,0x009D,0x009E,0x009F,
54 	0x00A0,0x2018,0x2019,0x00A3,INVALC,INVALC,0x00A6,0x00A7,
55 	0x00A8,0x00A9,INVALC,0x00AB,0x00AC,0x00AD,INVALC,0x2015,
56 	0x00B0,0x00B1,0x00B2,0x00B3,0x0384,0x0385,0x0386,0x00B7,
57 	0x0388,0x0389,0x038A,0x00BB,0x038C,0x00BD,0x038E,0x038F,
58 	0x0390,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397,
59 	0x0398,0x0399,0x039A,0x039B,0x039C,0x039D,0x039E,0x039F,
60 	0x03A0,0x03A1,INVALC,0x03A3,0x03A4,0x03A5,0x03A6,0x03A7,
61 	0x03A8,0x03A9,0x03AA,0x03AB,0x03AC,0x03AD,0x03AE,0x03AF,
62 	0x03B0,0x03B1,0x03B2,0x03B3,0x03B4,0x03B5,0x03B6,0x03B7,
63 	0x03B8,0x03B9,0x03BA,0x03BB,0x03BC,0x03BD,0x03BE,0x03BF,
64 	0x03C0,0x03C1,0x03C2,0x03C3,0x03C4,0x03C5,0x03C6,0x03C7,
65 	0x03C8,0x03C9,0x03CA,0x03CB,0x03CC,0x03CD,0x03CE,INVALC,
66 
67 };
68 
69 #endif /* ICONV_TO_UCS_CCS_ISO_8859_7 */
70 
71 /*
72  * 8-bit UCS -> iso_8859_7 speed-optimized table (1282 bytes).
73  * ======================================================================
74  */
75 
76 #if defined (ICONV_FROM_UCS_CCS_ISO_8859_7)
77 
78 static const unsigned char
79 from_ucs_speed_iso_8859_7[] =
80 {
81 	W(0xFFFF), /* Real 0xFF mapping. 0xFF is used to mark invalid codes */
82 	/* Heading Block */
83 	W(0x0202),W(INVBLK),W(INVBLK),W(0x0302),
84 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
85 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
86 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
87 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
88 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
89 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
90 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
91 	W(0x0402),W(INVBLK),W(INVBLK),W(INVBLK),
92 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
93 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
94 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
95 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
96 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
97 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
98 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
99 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
100 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
101 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
102 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
103 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
104 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
105 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
106 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
107 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
108 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
109 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
110 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
111 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
112 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
113 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
114 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
115 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
116 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
117 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
118 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
119 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
120 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
121 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
122 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
123 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
124 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
125 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
126 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
127 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
128 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
129 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
130 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
131 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
132 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
133 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
134 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
135 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
136 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
137 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
138 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
139 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
140 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
141 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
142 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
143 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
144 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
145 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
146 	W(INVBLK),W(INVBLK),W(INVBLK),W(INVBLK),
147 	/* Block 1, Array index 0x0202 */
148 	0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
149 	0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
150 	0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
151 	0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
152 	0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
153 	0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
154 	0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
155 	0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
156 	0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
157 	0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
158 	0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
159 	0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
160 	0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
161 	0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
162 	0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
163 	0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
164 	0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
165 	0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
166 	0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
167 	0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
168 	0xA0,0xFF,0xFF,0xA3,0xFF,0xFF,0xA6,0xA7,
169 	0xA8,0xA9,0xFF,0xAB,0xAC,0xAD,0xFF,0xFF,
170 	0xB0,0xB1,0xB2,0xB3,0xFF,0xFF,0xFF,0xB7,
171 	0xFF,0xFF,0xFF,0xBB,0xFF,0xBD,0xFF,0xFF,
172 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
173 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
174 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
175 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
176 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
177 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
178 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
179 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
180 	/* Block 4, Array index 0x0302 */
181 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
182 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
183 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
184 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
185 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
186 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
187 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
188 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
189 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
190 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
191 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
192 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
193 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
194 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
195 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
196 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
197 	0xFF,0xFF,0xFF,0xFF,0xB4,0xB5,0xB6,0xFF,
198 	0xB8,0xB9,0xBA,0xFF,0xBC,0xFF,0xBE,0xBF,
199 	0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
200 	0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
201 	0xD0,0xD1,0xFF,0xD3,0xD4,0xD5,0xD6,0xD7,
202 	0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
203 	0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
204 	0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
205 	0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
206 	0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF,
207 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
208 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
209 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
210 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
211 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
212 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
213 	/* Block 33, Array index 0x0402 */
214 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
215 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
216 	0xFF,0xFF,0xFF,0xFF,0xFF,0xAF,0xFF,0xFF,
217 	0xA1,0xA2,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
218 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
219 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
220 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
221 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
222 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
223 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
224 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
225 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
226 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
227 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
228 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
229 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
230 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
231 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
232 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
233 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
234 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
235 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
236 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
237 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
238 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
239 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
240 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
241 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
242 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
243 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
244 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
245 	0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
246 };
247 
248 #endif /* ICONV_FROM_UCS_CCS_ISO_8859_7 */
249 
250 /*
251  * iso_8859_7 CCS description table.
252  * ======================================================================
253  */
254 const iconv_ccs_t
255 _iconv_ccs_iso_8859_7 =
256 {
257 	TABLE_VERSION_1, /* Table version */
258 	ICONV_CCS_ISO_8859_7, /* CCS name */
259 	TABLE_8BIT, /* Table bits */
260 	0, /* Not Used */
261 #if defined (ICONV_FROM_UCS_CCS_ISO_8859_7)
262 	(__uint16_t *)&from_ucs_speed_iso_8859_7, /* UCS -> iso_8859_7 table */
263 #else
264 	(__uint16_t *)NULL,
265 #endif
266 	0, /* Not Used */
267 #if defined (ICONV_TO_UCS_CCS_ISO_8859_7)
268 	(__uint16_t *)&to_ucs_speed_iso_8859_7 /* iso_8859_7 -> UCS table */
269 #else
270 	(__uint16_t *)NULL,
271 #endif
272 };
273 
274 #endif /* ICONV_TO_UCS_CCS_ISO_8859_7) || ... */
275 
276