4.4BSD snapshot (revision 8.1); add 1993 to copyright
[unix-history] / usr / src / lib / libc / locale / table.c
CommitLineData
9b953d02
KB
1/*-
2 * Copyright (c) 1993 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Paul Borman at Krystal Technologies.
7 *
8 * %sccs.include.redist.c%
9 */
10
11#if defined(LIBC_SCCS) && !defined(lint)
53e6236f 12static char sccsid[] = "@(#)table.c 8.1 (Berkeley) %G%";
9b953d02
KB
13#endif /* LIBC_SCCS and not lint */
14
15#include <sys/types.h>
16
17#include <ctype.h>
18#include <rune.h>
19
20extern rune_t _none_sgetrune __P((const char *, size_t, char const **));
21extern int _none_sputrune __P((rune_t, char *, size_t, char **));
22extern int _none_init __P((char *, char **));
23
24_RuneLocale _DefaultRuneLocale = {
25 _RUNE_MAGIC_1,
26 "none",
27 _none_sgetrune,
28 _none_sputrune,
29 0xFFFD,
30
31 { /*00*/ _C, _C, _C, _C,
32 _C, _C, _C, _C,
33 /*08*/ _C, _C|_S|_B, _C|_S, _C|_S,
34 _C|_S, _C|_S, _C, _C,
35 /*10*/ _C, _C, _C, _C,
36 _C, _C, _C, _C,
37 /*18*/ _C, _C, _C, _C,
38 _C, _C, _C, _C,
39 /*20*/ _S|_B|_R, _P|_R|_G, _P|_R|_G, _P|_R|_G,
40 _P|_R|_G, _P|_R|_G, _P|_R|_G, _P|_R|_G,
41 /*28*/ _P|_R|_G, _P|_R|_G, _P|_R|_G, _P|_R|_G,
42 _P|_R|_G, _P|_R|_G, _P|_R|_G, _P|_R|_G,
43 /*30*/ _D|_R|_G|_X|0, _D|_R|_G|_X|1, _D|_R|_G|_X|2, _D|_R|_G|_X|3,
44 _D|_R|_G|_X|4, _D|_R|_G|_X|5, _D|_R|_G|_X|6, _D|_R|_G|_X|7,
45 /*38*/ _D|_R|_G|_X|8, _D|_R|_G|_X|9, _P|_R|_G, _P|_R|_G,
46 _P|_R|_G, _P|_R|_G, _P|_R|_G, _P|_R|_G,
47 /*40*/ _P|_R|_G, _U|_X|_R|_G|_A|10, _U|_X|_R|_G|_A|11, _U|_X|_R|_G|_A|12,
48 _U|_X|_R|_G|_A|13, _U|_X|_R|_G|_A|14, _U|_X|_R|_G|_A|15, _U|_R|_G|_A,
49 /*48*/ _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A,
50 _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A,
51 /*50*/ _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A,
52 _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A,
53 /*58*/ _U|_R|_G|_A, _U|_R|_G|_A, _U|_R|_G|_A, _P|_R|_G,
54 _P|_R|_G, _P|_R|_G, _P|_R|_G, _P|_R|_G,
55 /*60*/ _P|_R|_G, _L|_X|_R|_G|_A|10, _L|_X|_R|_G|_A|11, _L|_X|_R|_G|_A|12,
56 _L|_X|_R|_G|_A|13, _L|_X|_R|_G|_A|14, _L|_X|_R|_G|_A|15, _L|_R|_G|_A,
57 /*68*/ _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A,
58 _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A,
59 /*70*/ _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A,
60 _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A,
61 /*78*/ _L|_R|_G|_A, _L|_R|_G|_A, _L|_R|_G|_A, _P|_R|_G,
62 _P|_R|_G, _P|_R|_G, _P|_R|_G, _C,
63 },
64 { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
65 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
66 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
67 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
68 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
69 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
70 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
71 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
72 0x40, 'a', 'b', 'c', 'd', 'e', 'f', 'g',
73 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
74 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
75 'x', 'y', 'z', 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
76 0x60, 'a', 'b', 'c', 'd', 'e', 'f', 'g',
77 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
78 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
79 'x', 'y', 'z', 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
80 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
81 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
82 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
83 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
84 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
85 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
86 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
87 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
88 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
89 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
90 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
91 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
92 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
93 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
94 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
95 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
96 },
97 { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
98 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
99 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
100 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
101 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
102 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
103 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
104 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
105 0x40, 'A', 'B', 'C', 'D', 'E', 'F', 'G',
106 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
107 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
108 'X', 'Y', 'Z', 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
109 0x60, 'A', 'B', 'C', 'D', 'E', 'F', 'G',
110 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
111 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
112 'X', 'Y', 'Z', 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
113 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
114 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
115 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
116 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
117 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
118 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
119 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
120 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
121 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
122 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
123 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
124 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
125 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
126 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
127 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
128 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
129 },
130};
131
132_RuneLocale *_CurrentRuneLocale = &_DefaultRuneLocale;
133
134int __mb_cur_max = 1;