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