1 /*-------------------------------------------------------------------------
2 *
3 * pl_unreserved_kwlist_d.h
4 * List of keywords represented as a ScanKeywordList.
5 *
6 * Portions Copyright (c) 1996-2021, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
8 *
9 * NOTES
10 * ******************************
11 * *** DO NOT EDIT THIS FILE! ***
12 * ******************************
13 *
14 * It has been GENERATED by src/tools/gen_keywordlist.pl
15 *
16 *-------------------------------------------------------------------------
17 */
18
19 #ifndef PL_UNRESERVED_KWLIST_D_H
20 #define PL_UNRESERVED_KWLIST_D_H
21
22 #include "common/kwlookup.h"
23
24 static const char UnreservedPLKeywords_kw_string[] =
25 "absolute\0"
26 "alias\0"
27 "and\0"
28 "array\0"
29 "assert\0"
30 "backward\0"
31 "call\0"
32 "chain\0"
33 "close\0"
34 "collate\0"
35 "column\0"
36 "column_name\0"
37 "commit\0"
38 "constant\0"
39 "constraint\0"
40 "constraint_name\0"
41 "continue\0"
42 "current\0"
43 "cursor\0"
44 "datatype\0"
45 "debug\0"
46 "default\0"
47 "detail\0"
48 "diagnostics\0"
49 "do\0"
50 "dump\0"
51 "elseif\0"
52 "elsif\0"
53 "errcode\0"
54 "error\0"
55 "exception\0"
56 "exit\0"
57 "fetch\0"
58 "first\0"
59 "forward\0"
60 "get\0"
61 "hint\0"
62 "import\0"
63 "info\0"
64 "insert\0"
65 "is\0"
66 "last\0"
67 "log\0"
68 "message\0"
69 "message_text\0"
70 "move\0"
71 "next\0"
72 "no\0"
73 "notice\0"
74 "open\0"
75 "option\0"
76 "perform\0"
77 "pg_context\0"
78 "pg_datatype_name\0"
79 "pg_exception_context\0"
80 "pg_exception_detail\0"
81 "pg_exception_hint\0"
82 "print_strict_params\0"
83 "prior\0"
84 "query\0"
85 "raise\0"
86 "relative\0"
87 "return\0"
88 "returned_sqlstate\0"
89 "reverse\0"
90 "rollback\0"
91 "row_count\0"
92 "rowtype\0"
93 "schema\0"
94 "schema_name\0"
95 "scroll\0"
96 "slice\0"
97 "sqlstate\0"
98 "stacked\0"
99 "table\0"
100 "table_name\0"
101 "type\0"
102 "use_column\0"
103 "use_variable\0"
104 "variable_conflict\0"
105 "warning";
106
107 static const uint16 UnreservedPLKeywords_kw_offsets[] = {
108 0,
109 9,
110 15,
111 19,
112 25,
113 32,
114 41,
115 46,
116 52,
117 58,
118 66,
119 73,
120 85,
121 92,
122 101,
123 112,
124 128,
125 137,
126 145,
127 152,
128 161,
129 167,
130 175,
131 182,
132 194,
133 197,
134 202,
135 209,
136 215,
137 223,
138 229,
139 239,
140 244,
141 250,
142 256,
143 264,
144 268,
145 273,
146 280,
147 285,
148 292,
149 295,
150 300,
151 304,
152 312,
153 325,
154 330,
155 335,
156 338,
157 345,
158 350,
159 357,
160 365,
161 376,
162 393,
163 414,
164 434,
165 452,
166 472,
167 478,
168 484,
169 490,
170 499,
171 506,
172 524,
173 532,
174 541,
175 551,
176 559,
177 566,
178 578,
179 585,
180 591,
181 600,
182 608,
183 614,
184 625,
185 630,
186 641,
187 654,
188 672,
189 };
190
191 #define UNRESERVEDPLKEYWORDS_NUM_KEYWORDS 81
192
193 static int
UnreservedPLKeywords_hash_func(const void * key,size_t keylen)194 UnreservedPLKeywords_hash_func(const void *key, size_t keylen)
195 {
196 static const int16 h[163] = {
197 32767, 61, -16, 14, -20, 0, 11, 32767,
198 0, 22, 80, 64, -6, -71, 32767, 32767,
199 32767, 32767, 65, 156, -7, 20, -29, 32767,
200 32767, -109, 32767, 33, 42, 32767, 32767, 53,
201 0, 17, 87, 56, 5, 32767, 32767, 54,
202 32767, 0, 5, 32767, 32767, 53, -62, 55,
203 32767, 51, 6, 32767, 0, 34, 32767, 4,
204 32767, -41, 32767, 32767, 32767, 0, 18, 7,
205 0, 32767, 32767, 32767, 32767, 32767, 16, 32767,
206 8, 37, 0, 6, 32767, 68, 18, 0,
207 32767, 14, 49, 37, 32767, 50, 0, 32767,
208 11, 79, 9, 0, 5, 32767, -17, 63,
209 32767, 32767, 32767, 0, 32767, 32767, 75, 15,
210 8, 32767, -9, 35, -89, 0, 23, 32767,
211 25, 0, 12, 70, 0, 0, 56, 63,
212 136, 0, -46, 85, 0, 32767, 32767, 32767,
213 0, 46, 32767, 0, 78, 32767, 0, 32767,
214 29, 32767, 32767, 32, -90, 27, 0, 0,
215 40, 137, 0, 59, 0, 32767, 16, 131,
216 0, 32767, 1, 32767, 32767, 32767, 32767, -74,
217 43, 0, 0
218 };
219
220 const unsigned char *k = (const unsigned char *) key;
221 uint32 a = 0;
222 uint32 b = 0;
223
224 while (keylen--)
225 {
226 unsigned char c = *k++ | 0x20;
227
228 a = a * 257 + c;
229 b = b * 17 + c;
230 }
231 return h[a % 163] + h[b % 163];
232 }
233
234 static const ScanKeywordList UnreservedPLKeywords = {
235 UnreservedPLKeywords_kw_string,
236 UnreservedPLKeywords_kw_offsets,
237 UnreservedPLKeywords_hash_func,
238 UNRESERVEDPLKEYWORDS_NUM_KEYWORDS,
239 20
240 };
241
242 #endif /* PL_UNRESERVED_KWLIST_D_H */
243