]>
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 * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
8 * This file contains Original Code and/or Modifications of Original Code
9 * as defined in and that are subject to the Apple Public Source License
10 * Version 2.0 (the 'License'). You may not use this file except in
11 * compliance with the License. Please obtain a copy of the License at
12 * http://www.opensource.apple.com/apsl/ and read it before using this
15 * The Original Code and all software distributed under the License are
16 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
17 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
18 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
20 * Please see the License for the specific language governing rights and
21 * limitations under the License.
23 * @APPLE_LICENSE_HEADER_END@
25 #pragma CC_NO_MACH_TEXT_SECTIONS
27 * Copyright 1990, NeXT, Inc.
31 * This file contains global data and the size of the global data can NOT
32 * change or otherwise it would make the shared library incompatable. This
33 * file has NOT been padded to allow more data to be added to it because the
34 * sizeof(char) is not expected to change.
39 const unsigned int _NX_CTypeTable_
[1 + 256] = {
41 /* One extra char in table: */ 0,
52 /* 9 .notdef */ _C
|_S
,
53 /* 10 .notdef */ _C
|_S
,
54 /* 11 .notdef */ _C
|_S
,
55 /* 12 .notdef */ _C
|_S
,
56 /* 13 .notdef */ _C
|_S
,
81 /* 35 numbersign */ _P
,
84 /* 38 ampersand */ _P
,
85 /* 39 quoteright */ _P
,
87 /* 40 parenleft */ _P
,
88 /* 41 parenright */ _P
,
108 /* 59 semicolon */ _P
,
112 /* 63 question */ _P
,
144 /* 91 bracketleft */ _P
,
145 /* 92 backslash */ _P
,
146 /* 93 bracketright */ _P
,
147 /* 94 asciicircum */ _P
,
148 /* 95 underscore */ _P
,
150 /* 96 quoteleft */ _P
,
180 /* 123 braceleft */ _P
,
182 /* 125 braceright */ _P
,
183 /* 126 asciitilde */ _P
,
184 /* 127 .notdef */ _C
,
186 /* 128 .notdef */ _C
,
189 /* 131 Acircumflex */ _U
,
191 /* 133 Adieresis */ _U
,
193 /* 135 Ccedilla */ _U
,
197 /* 138 Ecircumflex */ _U
,
198 /* 139 Edieresis */ _U
,
201 /* 142 Icircumflex */ _U
,
202 /* 143 Idieresis */ _U
,
208 /* 148 Ocircumflex */ _U
,
210 /* 150 Odieresis */ _U
,
214 /* 153 Ucircumflex */ _U
,
215 /* 154 Udieresis */ _U
,
219 /* 158 multiply */ _P
,
222 /* 160 copyright */ _P
,
223 /* 161 exclamdown */ _P
,
225 /* 163 sterling */ _P
,
226 /* 164 fraction */ _P
,
229 /* 167 section */ _P
,
231 /* 168 currency */ _P
,
232 /* 169 quotesingle */ _P
,
233 /* 170 quotedblleft */ _P
,
234 /* 171 guillemotleft */ _P
,
235 /* 172 guilsinglleft */ _P
,
236 /* 173 guilsinglright */ _P
,
240 /* 176 registered */ _P
,
243 /* 179 daggerdbl */ _P
,
244 /* 180 periodcentered */ _P
,
245 /* 181 brokenbar */ _P
,
246 /* 182 paragraph */ _P
,
249 /* 184 quotesinglbase */ _P
,
250 /* 185 quotedblbase */ _P
,
251 /* 186 quotedblright */ _P
,
252 /* 187 guillemotright */ _P
,
253 /* 188 ellipsis */ _P
,
254 /* 189 perthousand */ _P
,
255 /* 190 logicalnot */ _P
,
256 /* 191 questiondown */ _P
,
258 /* 192 onesuperior */ _P
,
261 /* 195 circumflex */ _P
,
265 /* 199 dotaccent */ _P
,
267 /* 200 dieresis */ _P
,
268 /* 201 twosuperior */ _P
,
270 /* 203 cedilla */ _P
,
271 /* 204 threesuperior */ _P
,
272 /* 205 hungarumlaut */ _P
,
277 /* 209 plusminus */ _P
,
278 /* 210 onequarter */ _P
,
279 /* 211 onehalf */ _P
,
280 /* 212 threequarters */ _P
,
283 /* 215 acircumflex */ _L
,
286 /* 217 adieresis */ _L
,
288 /* 219 ccedilla */ _L
,
291 /* 222 ecircumflex */ _L
,
292 /* 223 edieresis */ _L
,
297 /* 227 ordfeminine */ _P
,
298 /* 228 icircumflex */ _L
,
299 /* 229 idieresis */ _L
,
306 /* 235 ordmasculine */ _P
,
309 /* 238 ocircumflex */ _L
,
312 /* 240 odieresis */ _L
,
316 /* 244 ucircumflex */ _L
,
317 /* 245 dotlessi */ _L
,
318 /* 246 udieresis */ _L
,
324 /* 251 germandbls */ _L
,
326 /* 253 ydieresis */ _L
,
327 /* 254 .notdef */ _C
,
328 /* 255 .notdef */ _C
,
332 * Upper to lower and lower to upper table for NeXTStep encoding (256
333 * characters). An entry of zero means it's not an upper or lower case
334 * thing (i.e., isn't alphabetic). Otherwise, the value at a given
335 * position is the opposite case equivalent. E.g., the entry for the
336 * "A" position is "a" and the entry for position "a" is "A".
338 * There are some pathological cases: ydieresis, germandbls, and the
339 * fi & fl ligatures don't have "other case" equivalents; therefore
340 * they're entered as themselves because they are in fact "lower case"
341 * and the Type table lists them as _L.
343 const unsigned char _NX_ULTable_
[256] = {
379 /* 35 numbersign */ 0,
382 /* 38 ampersand */ 0,
383 /* 39 quoteright */ 0,
384 /* 40 parenleft */ 0,
385 /* 41 parenright */ 0,
403 /* 59 semicolon */ 0,
435 /* 91 bracketleft */ 0,
436 /* 92 backslash */ 0,
437 /* 93 bracketright */ 0,
438 /* 94 asciicircum */ 0,
439 /* 95 underscore */ 0,
440 /* 96 quoteleft */ 0,
467 /* 123 braceleft */ 0,
469 /* 125 braceright */ 0,
470 /* 126 asciitilde */ 0,
473 /* 129 Agrave */ 213,
474 /* 130 Aacute */ 214,
475 /* 131 Acircumflex */ 215,
476 /* 132 Atilde */ 216,
477 /* 133 Adieresis */ 217,
479 /* 135 Ccedilla */ 219,
480 /* 136 Egrave */ 220,
481 /* 137 Eacute */ 221,
482 /* 138 Ecircumflex */ 222,
483 /* 139 Edieresis */ 223,
484 /* 140 Igrave */ 224,
485 /* 141 Iacute */ 226,
486 /* 142 Icircumflex */ 228,
487 /* 143 Idieresis */ 229,
489 /* 145 Ntilde */ 231,
490 /* 146 Ograve */ 236,
491 /* 147 Oacute */ 237,
492 /* 148 Ocircumflex */ 238,
493 /* 149 Otilde */ 239,
494 /* 150 Odieresis */ 240,
495 /* 151 Ugrave */ 242,
496 /* 152 Uacute */ 243,
497 /* 153 Ucircumflex */ 244,
498 /* 154 Udieresis */ 246,
499 /* 155 Yacute */ 247,
502 /* 158 multiply */ 0,
504 /* 160 copyright */ 0,
505 /* 161 exclamdown */ 0,
507 /* 163 sterling */ 0,
508 /* 164 fraction */ 0,
512 /* 168 currency */ 0,
513 /* 169 quotesingle */ 0,
514 /* 170 quotedblleft */ 0,
515 /* 171 guillemotleft */ 0,
516 /* 172 guilsinglleft */ 0,
517 /* 173 guilsinglright */ 0,
518 /* 174 fi */ 174, /* is self */
519 /* 175 fl */ 175, /* is self */
520 /* 176 registered */ 0,
523 /* 179 daggerdbl */ 0,
524 /* 180 periodcentered */ 0,
525 /* 181 brokenbar */ 0,
526 /* 182 paragraph */ 0,
528 /* 184 quotesinglbase */ 0,
529 /* 185 quotedblbase */ 0,
530 /* 186 quotedblright */ 0,
531 /* 187 guillemotright */ 0,
532 /* 188 ellipsis */ 0,
533 /* 189 perthousand */ 0,
534 /* 190 logicalnot */ 0,
535 /* 191 questiondown */ 0,
536 /* 192 onesuperior */ 0,
539 /* 195 circumflex */ 0,
543 /* 199 dotaccent */ 0,
544 /* 200 dieresis */ 0,
545 /* 201 twosuperior */ 0,
548 /* 204 threesuperior */ 0,
549 /* 205 hungarumlaut */ 0,
553 /* 209 plusminus */ 0,
554 /* 210 onequarter */ 0,
556 /* 212 threequarters */ 0,
557 /* 213 agrave */ 129,
558 /* 214 aacute */ 130,
559 /* 215 acircumflex */ 131,
560 /* 216 atilde */ 132,
561 /* 217 adieresis */ 133,
563 /* 219 ccedilla */ 135,
564 /* 220 egrave */ 136,
565 /* 221 eacute */ 137,
566 /* 222 ecircumflex */ 138,
567 /* 223 edieresis */ 139,
568 /* 224 igrave */ 140,
570 /* 226 iacute */ 141,
571 /* 227 ordfeminine */ 0,
572 /* 228 icircumflex */ 142,
573 /* 229 idieresis */ 143,
575 /* 231 ntilde */ 145,
576 /* 232 Lslash */ 248,
577 /* 233 Oslash */ 249,
579 /* 235 ordmasculine */ 0,
580 /* 236 ograve */ 146,
581 /* 237 oacute */ 147,
582 /* 238 ocircumflex */ 148,
583 /* 239 otilde */ 149,
584 /* 240 odieresis */ 150,
586 /* 242 ugrave */ 151,
587 /* 243 uacute */ 152,
588 /* 244 ucircumflex */ 153,
589 /* 245 dotlessi */ 245, /* is self */
590 /* 246 udieresis */ 154,
591 /* 247 yacute */ 155,
592 /* 248 lslash */ 232,
593 /* 249 oslash */ 233,
595 /* 251 germandbls */ 251, /* is self */
597 /* 253 ydieresis */ 253, /* is self */