1/* A Bison parser, made by GNU Bison 3.0.4. */
2
3/* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20/* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
29
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
32
33#ifndef YY_SQL_SQL_PARSER_TAB_H_INCLUDED
34# define YY_SQL_SQL_PARSER_TAB_H_INCLUDED
35/* Debug traces. */
36#ifndef YYDEBUG
37# define YYDEBUG 0
38#endif
39#if YYDEBUG
40extern int sqldebug;
41#endif
42
43/* Token type. */
44#ifndef YYTOKENTYPE
45# define YYTOKENTYPE
46 enum yytokentype
47 {
48 STRING = 258,
49 USTRING = 259,
50 XSTRING = 260,
51 X_BODY = 261,
52 IDENT = 262,
53 UIDENT = 263,
54 aTYPE = 264,
55 ALIAS = 265,
56 AGGR = 266,
57 AGGR2 = 267,
58 RANK = 268,
59 sqlINT = 269,
60 OIDNUM = 270,
61 HEXADECIMAL = 271,
62 INTNUM = 272,
63 APPROXNUM = 273,
64 USING = 274,
65 GLOBAL = 275,
66 CAST = 276,
67 CONVERT = 277,
68 CHARACTER = 278,
69 VARYING = 279,
70 LARGE = 280,
71 OBJECT = 281,
72 VARCHAR = 282,
73 CLOB = 283,
74 sqlTEXT = 284,
75 BINARY = 285,
76 sqlBLOB = 286,
77 sqlDECIMAL = 287,
78 sqlFLOAT = 288,
79 TINYINT = 289,
80 SMALLINT = 290,
81 BIGINT = 291,
82 HUGEINT = 292,
83 sqlINTEGER = 293,
84 sqlDOUBLE = 294,
85 sqlREAL = 295,
86 PRECISION = 296,
87 PARTIAL = 297,
88 SIMPLE = 298,
89 ACTION = 299,
90 CASCADE = 300,
91 RESTRICT = 301,
92 BOOL_FALSE = 302,
93 BOOL_TRUE = 303,
94 CURRENT_DATE = 304,
95 CURRENT_TIMESTAMP = 305,
96 CURRENT_TIME = 306,
97 LOCALTIMESTAMP = 307,
98 LOCALTIME = 308,
99 LEX_ERROR = 309,
100 GEOMETRY = 310,
101 GEOMETRYSUBTYPE = 311,
102 GEOMETRYA = 312,
103 USER = 313,
104 CURRENT_USER = 314,
105 SESSION_USER = 315,
106 LOCAL = 316,
107 LOCKED = 317,
108 BEST = 318,
109 EFFORT = 319,
110 CURRENT_ROLE = 320,
111 sqlSESSION = 321,
112 sqlDELETE = 322,
113 UPDATE = 323,
114 SELECT = 324,
115 INSERT = 325,
116 MATCHED = 326,
117 LATERAL = 327,
118 LEFT = 328,
119 RIGHT = 329,
120 FULL = 330,
121 OUTER = 331,
122 NATURAL = 332,
123 CROSS = 333,
124 JOIN = 334,
125 INNER = 335,
126 COMMIT = 336,
127 ROLLBACK = 337,
128 SAVEPOINT = 338,
129 RELEASE = 339,
130 WORK = 340,
131 CHAIN = 341,
132 NO = 342,
133 PRESERVE = 343,
134 ROWS = 344,
135 START = 345,
136 TRANSACTION = 346,
137 READ = 347,
138 WRITE = 348,
139 ONLY = 349,
140 ISOLATION = 350,
141 LEVEL = 351,
142 UNCOMMITTED = 352,
143 COMMITTED = 353,
144 sqlREPEATABLE = 354,
145 SERIALIZABLE = 355,
146 DIAGNOSTICS = 356,
147 sqlSIZE = 357,
148 STORAGE = 358,
149 ASYMMETRIC = 359,
150 SYMMETRIC = 360,
151 ORDER = 361,
152 ORDERED = 362,
153 BY = 363,
154 IMPRINTS = 364,
155 EXISTS = 365,
156 ESCAPE = 366,
157 UESCAPE = 367,
158 HAVING = 368,
159 sqlGROUP = 369,
160 sqlNULL = 370,
161 FROM = 371,
162 FOR = 372,
163 MATCH = 373,
164 EXTRACT = 374,
165 SEQUENCE = 375,
166 INCREMENT = 376,
167 RESTART = 377,
168 CONTINUE = 378,
169 MAXVALUE = 379,
170 MINVALUE = 380,
171 CYCLE = 381,
172 NEXT = 382,
173 VALUE = 383,
174 CACHE = 384,
175 GENERATED = 385,
176 ALWAYS = 386,
177 IDENTITY = 387,
178 SERIAL = 388,
179 BIGSERIAL = 389,
180 AUTO_INCREMENT = 390,
181 SCOLON = 391,
182 AT = 392,
183 XMLCOMMENT = 393,
184 XMLCONCAT = 394,
185 XMLDOCUMENT = 395,
186 XMLELEMENT = 396,
187 XMLATTRIBUTES = 397,
188 XMLFOREST = 398,
189 XMLPARSE = 399,
190 STRIP = 400,
191 WHITESPACE = 401,
192 XMLPI = 402,
193 XMLQUERY = 403,
194 PASSING = 404,
195 XMLTEXT = 405,
196 NIL = 406,
197 REF = 407,
198 ABSENT = 408,
199 EMPTY = 409,
200 DOCUMENT = 410,
201 ELEMENT = 411,
202 CONTENT = 412,
203 XMLNAMESPACES = 413,
204 NAMESPACE = 414,
205 XMLVALIDATE = 415,
206 RETURNING = 416,
207 LOCATION = 417,
208 ID = 418,
209 ACCORDING = 419,
210 XMLSCHEMA = 420,
211 URI = 421,
212 XMLAGG = 422,
213 FILTER = 423,
214 UNION = 424,
215 EXCEPT = 425,
216 INTERSECT = 426,
217 CORRESPONDING = 427,
218 UNIONJOIN = 428,
219 WITH = 429,
220 DATA = 430,
221 FILTER_FUNC = 431,
222 NOT = 432,
223 ALL = 433,
224 ANY = 434,
225 NOT_BETWEEN = 435,
226 BETWEEN = 436,
227 NOT_IN = 437,
228 sqlIN = 438,
229 NOT_LIKE = 439,
230 LIKE = 440,
231 NOT_ILIKE = 441,
232 ILIKE = 442,
233 OR = 443,
234 SOME = 444,
235 AND = 445,
236 COMPARISON = 446,
237 LEFT_SHIFT = 447,
238 RIGHT_SHIFT = 448,
239 LEFT_SHIFT_ASSIGN = 449,
240 RIGHT_SHIFT_ASSIGN = 450,
241 CONCATSTRING = 451,
242 SUBSTRING = 452,
243 POSITION = 453,
244 SPLIT_PART = 454,
245 UMINUS = 455,
246 GEOM_OVERLAP = 456,
247 GEOM_OVERLAP_OR_ABOVE = 457,
248 GEOM_OVERLAP_OR_BELOW = 458,
249 GEOM_OVERLAP_OR_LEFT = 459,
250 GEOM_OVERLAP_OR_RIGHT = 460,
251 GEOM_BELOW = 461,
252 GEOM_ABOVE = 462,
253 GEOM_DIST = 463,
254 GEOM_MBR_EQUAL = 464,
255 TEMP = 465,
256 TEMPORARY = 466,
257 STREAM = 467,
258 MERGE = 468,
259 REMOTE = 469,
260 REPLICA = 470,
261 ASC = 471,
262 DESC = 472,
263 AUTHORIZATION = 473,
264 CHECK = 474,
265 CONSTRAINT = 475,
266 CREATE = 476,
267 COMMENT = 477,
268 NULLS = 478,
269 FIRST = 479,
270 LAST = 480,
271 TYPE = 481,
272 PROCEDURE = 482,
273 FUNCTION = 483,
274 sqlLOADER = 484,
275 AGGREGATE = 485,
276 RETURNS = 486,
277 EXTERNAL = 487,
278 sqlNAME = 488,
279 DECLARE = 489,
280 CALL = 490,
281 LANGUAGE = 491,
282 ANALYZE = 492,
283 MINMAX = 493,
284 SQL_EXPLAIN = 494,
285 SQL_PLAN = 495,
286 SQL_DEBUG = 496,
287 SQL_TRACE = 497,
288 PREP = 498,
289 PREPARE = 499,
290 EXEC = 500,
291 EXECUTE = 501,
292 DEFAULT = 502,
293 DISTINCT = 503,
294 DROP = 504,
295 TRUNCATE = 505,
296 FOREIGN = 506,
297 RENAME = 507,
298 ENCRYPTED = 508,
299 UNENCRYPTED = 509,
300 PASSWORD = 510,
301 GRANT = 511,
302 REVOKE = 512,
303 ROLE = 513,
304 ADMIN = 514,
305 INTO = 515,
306 IS = 516,
307 KEY = 517,
308 ON = 518,
309 OPTION = 519,
310 OPTIONS = 520,
311 PATH = 521,
312 PRIMARY = 522,
313 PRIVILEGES = 523,
314 PUBLIC = 524,
315 REFERENCES = 525,
316 SCHEMA = 526,
317 SET = 527,
318 AUTO_COMMIT = 528,
319 RETURN = 529,
320 ALTER = 530,
321 ADD = 531,
322 TABLE = 532,
323 COLUMN = 533,
324 TO = 534,
325 UNIQUE = 535,
326 VALUES = 536,
327 VIEW = 537,
328 WHERE = 538,
329 sqlDATE = 539,
330 TIME = 540,
331 TIMESTAMP = 541,
332 INTERVAL = 542,
333 CENTURY = 543,
334 DECADE = 544,
335 YEAR = 545,
336 QUARTER = 546,
337 DOW = 547,
338 DOY = 548,
339 MONTH = 549,
340 WEEK = 550,
341 DAY = 551,
342 HOUR = 552,
343 MINUTE = 553,
344 SECOND = 554,
345 ZONE = 555,
346 LIMIT = 556,
347 OFFSET = 557,
348 SAMPLE = 558,
349 SEED = 559,
350 CASE = 560,
351 WHEN = 561,
352 THEN = 562,
353 ELSE = 563,
354 NULLIF = 564,
355 COALESCE = 565,
356 IF = 566,
357 ELSEIF = 567,
358 WHILE = 568,
359 DO = 569,
360 ATOMIC = 570,
361 BEGIN = 571,
362 END = 572,
363 COPY = 573,
364 RECORDS = 574,
365 DELIMITERS = 575,
366 STDIN = 576,
367 STDOUT = 577,
368 FWF = 578,
369 CLIENT = 579,
370 SERVER = 580,
371 INDEX = 581,
372 REPLACE = 582,
373 AS = 583,
374 TRIGGER = 584,
375 OF = 585,
376 BEFORE = 586,
377 AFTER = 587,
378 ROW = 588,
379 STATEMENT = 589,
380 sqlNEW = 590,
381 OLD = 591,
382 EACH = 592,
383 REFERENCING = 593,
384 OVER = 594,
385 PARTITION = 595,
386 CURRENT = 596,
387 EXCLUDE = 597,
388 FOLLOWING = 598,
389 PRECEDING = 599,
390 OTHERS = 600,
391 TIES = 601,
392 RANGE = 602,
393 UNBOUNDED = 603,
394 GROUPS = 604,
395 WINDOW = 605
396 };
397#endif
398
399/* Value type. */
400#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
401
402union YYSTYPE
403{
404#line 168 "sql_parser.y" /* yacc.c:1909 */
405
406 int i_val,bval;
407 lng l_val,operation;
408 double fval;
409 char * sval;
410 symbol* sym;
411 dlist* l;
412 sql_subtype type;
413
414#line 415 "sql_parser.tab.h" /* yacc.c:1909 */
415};
416
417typedef union YYSTYPE YYSTYPE;
418# define YYSTYPE_IS_TRIVIAL 1
419# define YYSTYPE_IS_DECLARED 1
420#endif
421
422
423
424int sqlparse (mvc *m);
425
426#endif /* !YY_SQL_SQL_PARSER_TAB_H_INCLUDED */
427