]>
git.saurik.com Git - apple/libc.git/blob - internat.subproj/NXCType.c
2 * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
20 * @APPLE_LICENSE_HEADER_END@
22 #pragma CC_NO_MACH_TEXT_SECTIONS
24 * Copyright 1990, NeXT, Inc.
28 * This file contains global data and the size of the global data can NOT
29 * change or otherwise it would make the shared library incompatable. This
30 * file has NOT been padded to allow more data to be added to it because the
31 * sizeof(char) is not expected to change.
36 const unsigned int _NX_CTypeTable_
[1 + 256] = {
38 /* One extra char in table: */ 0,
49 /* 9 .notdef */ _C
|_S
,
50 /* 10 .notdef */ _C
|_S
,
51 /* 11 .notdef */ _C
|_S
,
52 /* 12 .notdef */ _C
|_S
,
53 /* 13 .notdef */ _C
|_S
,
78 /* 35 numbersign */ _P
,
81 /* 38 ampersand */ _P
,
82 /* 39 quoteright */ _P
,
84 /* 40 parenleft */ _P
,
85 /* 41 parenright */ _P
,
105 /* 59 semicolon */ _P
,
109 /* 63 question */ _P
,
141 /* 91 bracketleft */ _P
,
142 /* 92 backslash */ _P
,
143 /* 93 bracketright */ _P
,
144 /* 94 asciicircum */ _P
,
145 /* 95 underscore */ _P
,
147 /* 96 quoteleft */ _P
,
177 /* 123 braceleft */ _P
,
179 /* 125 braceright */ _P
,
180 /* 126 asciitilde */ _P
,
181 /* 127 .notdef */ _C
,
183 /* 128 .notdef */ _C
,
186 /* 131 Acircumflex */ _U
,
188 /* 133 Adieresis */ _U
,
190 /* 135 Ccedilla */ _U
,
194 /* 138 Ecircumflex */ _U
,
195 /* 139 Edieresis */ _U
,
198 /* 142 Icircumflex */ _U
,
199 /* 143 Idieresis */ _U
,
205 /* 148 Ocircumflex */ _U
,
207 /* 150 Odieresis */ _U
,
211 /* 153 Ucircumflex */ _U
,
212 /* 154 Udieresis */ _U
,
216 /* 158 multiply */ _P
,
219 /* 160 copyright */ _P
,
220 /* 161 exclamdown */ _P
,
222 /* 163 sterling */ _P
,
223 /* 164 fraction */ _P
,
226 /* 167 section */ _P
,
228 /* 168 currency */ _P
,
229 /* 169 quotesingle */ _P
,
230 /* 170 quotedblleft */ _P
,
231 /* 171 guillemotleft */ _P
,
232 /* 172 guilsinglleft */ _P
,
233 /* 173 guilsinglright */ _P
,
237 /* 176 registered */ _P
,
240 /* 179 daggerdbl */ _P
,
241 /* 180 periodcentered */ _P
,
242 /* 181 brokenbar */ _P
,
243 /* 182 paragraph */ _P
,
246 /* 184 quotesinglbase */ _P
,
247 /* 185 quotedblbase */ _P
,
248 /* 186 quotedblright */ _P
,
249 /* 187 guillemotright */ _P
,
250 /* 188 ellipsis */ _P
,
251 /* 189 perthousand */ _P
,
252 /* 190 logicalnot */ _P
,
253 /* 191 questiondown */ _P
,
255 /* 192 onesuperior */ _P
,
258 /* 195 circumflex */ _P
,
262 /* 199 dotaccent */ _P
,
264 /* 200 dieresis */ _P
,
265 /* 201 twosuperior */ _P
,
267 /* 203 cedilla */ _P
,
268 /* 204 threesuperior */ _P
,
269 /* 205 hungarumlaut */ _P
,
274 /* 209 plusminus */ _P
,
275 /* 210 onequarter */ _P
,
276 /* 211 onehalf */ _P
,
277 /* 212 threequarters */ _P
,
280 /* 215 acircumflex */ _L
,
283 /* 217 adieresis */ _L
,
285 /* 219 ccedilla */ _L
,
288 /* 222 ecircumflex */ _L
,
289 /* 223 edieresis */ _L
,
294 /* 227 ordfeminine */ _P
,
295 /* 228 icircumflex */ _L
,
296 /* 229 idieresis */ _L
,
303 /* 235 ordmasculine */ _P
,
306 /* 238 ocircumflex */ _L
,
309 /* 240 odieresis */ _L
,
313 /* 244 ucircumflex */ _L
,
314 /* 245 dotlessi */ _L
,
315 /* 246 udieresis */ _L
,
321 /* 251 germandbls */ _L
,
323 /* 253 ydieresis */ _L
,
324 /* 254 .notdef */ _C
,
325 /* 255 .notdef */ _C
,
329 * Upper to lower and lower to upper table for NeXTStep encoding (256
330 * characters). An entry of zero means it's not an upper or lower case
331 * thing (i.e., isn't alphabetic). Otherwise, the value at a given
332 * position is the opposite case equivalent. E.g., the entry for the
333 * "A" position is "a" and the entry for position "a" is "A".
335 * There are some pathological cases: ydieresis, germandbls, and the
336 * fi & fl ligatures don't have "other case" equivalents; therefore
337 * they're entered as themselves because they are in fact "lower case"
338 * and the Type table lists them as _L.
340 const unsigned char _NX_ULTable_
[256] = {
376 /* 35 numbersign */ 0,
379 /* 38 ampersand */ 0,
380 /* 39 quoteright */ 0,
381 /* 40 parenleft */ 0,
382 /* 41 parenright */ 0,
400 /* 59 semicolon */ 0,
432 /* 91 bracketleft */ 0,
433 /* 92 backslash */ 0,
434 /* 93 bracketright */ 0,
435 /* 94 asciicircum */ 0,
436 /* 95 underscore */ 0,
437 /* 96 quoteleft */ 0,
464 /* 123 braceleft */ 0,
466 /* 125 braceright */ 0,
467 /* 126 asciitilde */ 0,
470 /* 129 Agrave */ 213,
471 /* 130 Aacute */ 214,
472 /* 131 Acircumflex */ 215,
473 /* 132 Atilde */ 216,
474 /* 133 Adieresis */ 217,
476 /* 135 Ccedilla */ 219,
477 /* 136 Egrave */ 220,
478 /* 137 Eacute */ 221,
479 /* 138 Ecircumflex */ 222,
480 /* 139 Edieresis */ 223,
481 /* 140 Igrave */ 224,
482 /* 141 Iacute */ 226,
483 /* 142 Icircumflex */ 228,
484 /* 143 Idieresis */ 229,
486 /* 145 Ntilde */ 231,
487 /* 146 Ograve */ 236,
488 /* 147 Oacute */ 237,
489 /* 148 Ocircumflex */ 238,
490 /* 149 Otilde */ 239,
491 /* 150 Odieresis */ 240,
492 /* 151 Ugrave */ 242,
493 /* 152 Uacute */ 243,
494 /* 153 Ucircumflex */ 244,
495 /* 154 Udieresis */ 246,
496 /* 155 Yacute */ 247,
499 /* 158 multiply */ 0,
501 /* 160 copyright */ 0,
502 /* 161 exclamdown */ 0,
504 /* 163 sterling */ 0,
505 /* 164 fraction */ 0,
509 /* 168 currency */ 0,
510 /* 169 quotesingle */ 0,
511 /* 170 quotedblleft */ 0,
512 /* 171 guillemotleft */ 0,
513 /* 172 guilsinglleft */ 0,
514 /* 173 guilsinglright */ 0,
515 /* 174 fi */ 174, /* is self */
516 /* 175 fl */ 175, /* is self */
517 /* 176 registered */ 0,
520 /* 179 daggerdbl */ 0,
521 /* 180 periodcentered */ 0,
522 /* 181 brokenbar */ 0,
523 /* 182 paragraph */ 0,
525 /* 184 quotesinglbase */ 0,
526 /* 185 quotedblbase */ 0,
527 /* 186 quotedblright */ 0,
528 /* 187 guillemotright */ 0,
529 /* 188 ellipsis */ 0,
530 /* 189 perthousand */ 0,
531 /* 190 logicalnot */ 0,
532 /* 191 questiondown */ 0,
533 /* 192 onesuperior */ 0,
536 /* 195 circumflex */ 0,
540 /* 199 dotaccent */ 0,
541 /* 200 dieresis */ 0,
542 /* 201 twosuperior */ 0,
545 /* 204 threesuperior */ 0,
546 /* 205 hungarumlaut */ 0,
550 /* 209 plusminus */ 0,
551 /* 210 onequarter */ 0,
553 /* 212 threequarters */ 0,
554 /* 213 agrave */ 129,
555 /* 214 aacute */ 130,
556 /* 215 acircumflex */ 131,
557 /* 216 atilde */ 132,
558 /* 217 adieresis */ 133,
560 /* 219 ccedilla */ 135,
561 /* 220 egrave */ 136,
562 /* 221 eacute */ 137,
563 /* 222 ecircumflex */ 138,
564 /* 223 edieresis */ 139,
565 /* 224 igrave */ 140,
567 /* 226 iacute */ 141,
568 /* 227 ordfeminine */ 0,
569 /* 228 icircumflex */ 142,
570 /* 229 idieresis */ 143,
572 /* 231 ntilde */ 145,
573 /* 232 Lslash */ 248,
574 /* 233 Oslash */ 249,
576 /* 235 ordmasculine */ 0,
577 /* 236 ograve */ 146,
578 /* 237 oacute */ 147,
579 /* 238 ocircumflex */ 148,
580 /* 239 otilde */ 149,
581 /* 240 odieresis */ 150,
583 /* 242 ugrave */ 151,
584 /* 243 uacute */ 152,
585 /* 244 ucircumflex */ 153,
586 /* 245 dotlessi */ 245, /* is self */
587 /* 246 udieresis */ 154,
588 /* 247 yacute */ 155,
589 /* 248 lslash */ 232,
590 /* 249 oslash */ 233,
592 /* 251 germandbls */ 251, /* is self */
594 /* 253 ydieresis */ 253, /* is self */