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