Print this page
9083 replace regex implementation with tre
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/lib/libc/port/regex/cname.h
+++ new/usr/src/lib/libc/port/regex/cname.h
1 1 /*
2 2 * Copyright (c) 1992, 1993, 1994 Henry Spencer.
3 3 * Copyright (c) 1992, 1993, 1994
4 4 * The Regents of the University of California. All rights reserved.
5 5 *
6 6 * This code is derived from software contributed to Berkeley by
7 7 * Henry Spencer.
8 8 *
9 9 * Redistribution and use in source and binary forms, with or without
10 10 * modification, are permitted provided that the following conditions
11 11 * are met:
12 12 * 1. Redistributions of source code must retain the above copyright
13 13 * notice, this list of conditions and the following disclaimer.
14 14 * 2. Redistributions in binary form must reproduce the above copyright
15 15 * notice, this list of conditions and the following disclaimer in the
16 16 * documentation and/or other materials provided with the distribution.
17 17 * 3. Neither the name of the University nor the names of its contributors
18 18 * may be used to endorse or promote products derived from this software
19 19 * without specific prior written permission.
20 20 *
21 21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
↓ open down ↓ |
24 lines elided |
↑ open up ↑ |
25 25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 31 * SUCH DAMAGE.
32 32 */
33 33
34 34 /* character-name table */
35 -static struct cname {
36 - char *name;
37 - char code;
35 +static const struct cname {
36 + const wchar_t *name;
37 + wchar_t code;
38 38 } cnames[] = {
39 - {"NUL", '\0'},
40 - {"SOH", '\001'},
41 - {"STX", '\002'},
42 - {"ETX", '\003'},
43 - {"EOT", '\004'},
44 - {"ENQ", '\005'},
45 - {"ACK", '\006'},
46 - {"BEL", '\007'},
47 - {"alert", '\007'},
48 - {"BS", '\010'},
49 - {"backspace", '\b'},
50 - {"HT", '\011'},
51 - {"tab", '\t'},
52 - {"LF", '\012'},
53 - {"newline", '\n'},
54 - {"VT", '\013'},
55 - {"vertical-tab", '\v'},
56 - {"FF", '\014'},
57 - {"form-feed", '\f'},
58 - {"CR", '\015'},
59 - {"carriage-return", '\r'},
60 - {"SO", '\016'},
61 - {"SI", '\017'},
62 - {"DLE", '\020'},
63 - {"DC1", '\021'},
64 - {"DC2", '\022'},
65 - {"DC3", '\023'},
66 - {"DC4", '\024'},
67 - {"NAK", '\025'},
68 - {"SYN", '\026'},
69 - {"ETB", '\027'},
70 - {"CAN", '\030'},
71 - {"EM", '\031'},
72 - {"SUB", '\032'},
73 - {"ESC", '\033'},
74 - {"IS4", '\034'},
75 - {"FS", '\034'},
76 - {"IS3", '\035'},
77 - {"GS", '\035'},
78 - {"IS2", '\036'},
79 - {"RS", '\036'},
80 - {"IS1", '\037'},
81 - {"US", '\037'},
82 - {"space", ' '},
83 - {"exclamation-mark", '!'},
84 - {"quotation-mark", '"'},
85 - {"number-sign", '#'},
86 - {"dollar-sign", '$'},
87 - {"percent-sign", '%'},
88 - {"ampersand", '&'},
89 - {"apostrophe", '\''},
90 - {"left-parenthesis", '('},
91 - {"right-parenthesis", ')'},
92 - {"asterisk", '*'},
93 - {"plus-sign", '+'},
94 - {"comma", ','},
95 - {"hyphen", '-'},
96 - {"hyphen-minus", '-'},
97 - {"period", '.'},
98 - {"full-stop", '.'},
99 - {"slash", '/'},
100 - {"solidus", '/'},
101 - {"zero", '0'},
102 - {"one", '1'},
103 - {"two", '2'},
104 - {"three", '3'},
105 - {"four", '4'},
106 - {"five", '5'},
107 - {"six", '6'},
108 - {"seven", '7'},
109 - {"eight", '8'},
110 - {"nine", '9'},
111 - {"colon", ':'},
112 - {"semicolon", ';'},
113 - {"less-than-sign", '<'},
114 - {"equals-sign", '='},
115 - {"greater-than-sign", '>'},
116 - {"question-mark", '?'},
117 - {"commercial-at", '@'},
118 - {"left-square-bracket", '['},
119 - {"backslash", '\\'},
120 - {"reverse-solidus", '\\'},
121 - {"right-square-bracket", ']'},
122 - {"circumflex", '^'},
123 - {"circumflex-accent", '^'},
124 - {"underscore", '_'},
125 - {"low-line", '_'},
126 - {"grave-accent", '`'},
127 - {"left-brace", '{'},
128 - {"left-curly-bracket", '{'},
129 - {"vertical-line", '|'},
130 - {"right-brace", '}'},
131 - {"right-curly-bracket", '}'},
132 - {"tilde", '~'},
133 - {"DEL", '\177'},
134 - {NULL, 0}
39 + {L"", (wchar_t)-1}, /* sentinel */
40 + {L"ACK", L'\006'},
41 + {L"BEL", L'\007'},
42 + {L"BS", L'\010'},
43 + {L"CAN", L'\030'},
44 + {L"CR", L'\015'},
45 + {L"DC1", L'\021'},
46 + {L"DC2", L'\022'},
47 + {L"DC3", L'\023'},
48 + {L"DC4", L'\024'},
49 + {L"DEL", L'\177'},
50 + {L"DLE", L'\020'},
51 + {L"EM", L'\031'},
52 + {L"ENQ", L'\005'},
53 + {L"EOT", L'\004'},
54 + {L"ESC", L'\033'},
55 + {L"ETB", L'\027'},
56 + {L"ETX", L'\003'},
57 + {L"FF", L'\014'},
58 + {L"FS", L'\034'},
59 + {L"GS", L'\035'},
60 + {L"HT", L'\011'},
61 + {L"IS1", L'\037'},
62 + {L"IS2", L'\036'},
63 + {L"IS3", L'\035'},
64 + {L"IS4", L'\034'},
65 + {L"LF", L'\012'},
66 + {L"NAK", L'\025'},
67 + {L"NUL", L'\0'},
68 + {L"RS", L'\036'},
69 + {L"SI", L'\017'},
70 + {L"SO", L'\016'},
71 + {L"SOH", L'\001'},
72 + {L"STX", L'\002'},
73 + {L"SUB", L'\032'},
74 + {L"SYN", L'\026'},
75 + {L"US", L'\037'},
76 + {L"VT", L'\013'},
77 + {L"alert", L'\007'},
78 + {L"ampersand", L'&'},
79 + {L"apostrophe", L'\''},
80 + {L"asterisk", L'*'},
81 + {L"backslash", L'\\'},
82 + {L"backspace", L'\b'},
83 + {L"carriage-return", L'\r'},
84 + {L"circumflex", L'^'},
85 + {L"circumflex-accent", L'^'},
86 + {L"colon", L':'},
87 + {L"comma", L','},
88 + {L"commercial-at", L'@'},
89 + {L"dollar-sign", L'$'},
90 + {L"eight", L'8'},
91 + {L"equals-sign", L'='},
92 + {L"exclamation-mark", L'!'},
93 + {L"five", L'5'},
94 + {L"form-feed", L'\f'},
95 + {L"four", L'4'},
96 + {L"full-stop", L'.'},
97 + {L"grave-accent", L'`'},
98 + {L"greater-than-sign", L'>'},
99 + {L"hyphen", L'-'},
100 + {L"hyphen-minus", L'-'},
101 + {L"left-brace", L'{'},
102 + {L"left-curly-bracket", L'{'},
103 + {L"left-parenthesis", L'('},
104 + {L"left-square-bracket", L'['},
105 + {L"less-than-sign", L'<'},
106 + {L"low-line", L'_'},
107 + {L"newline", L'\n'},
108 + {L"nine", L'9'},
109 + {L"number-sign", L'#'},
110 + {L"one", L'1'},
111 + {L"percent-sign", L'%'},
112 + {L"period", L'.'},
113 + {L"plus-sign", L'+'},
114 + {L"question-mark", L'?'},
115 + {L"quotation-mark", L'"'},
116 + {L"reverse-solidus", L'\\'},
117 + {L"right-brace", L'}'},
118 + {L"right-curly-bracket", L'}'},
119 + {L"right-parenthesis", L')'},
120 + {L"right-square-bracket", L']'},
121 + {L"semicolon", L';'},
122 + {L"seven", L'7'},
123 + {L"six", L'6'},
124 + {L"slash", L'/'},
125 + {L"solidus", L'/'},
126 + {L"space", L' '},
127 + {L"tab", L'\t'},
128 + {L"three", L'3'},
129 + {L"tilde", L'~'},
130 + {L"two", L'2'},
131 + {L"underscore", L'_'},
132 + {L"vertical-line", L'|'},
133 + {L"vertical-tab", L'\v'},
134 + {L"zero", L'0'},
135 135 };
136 +
137 +#define NCNAMES (sizeof (cnames)/sizeof (*cnames))
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX