| 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_BASE_YY_GRAM_H_INCLUDED |
| 34 | # define YY_BASE_YY_GRAM_H_INCLUDED |
| 35 | /* Debug traces. */ |
| 36 | #ifndef YYDEBUG |
| 37 | # define YYDEBUG 0 |
| 38 | #endif |
| 39 | #if YYDEBUG |
| 40 | extern int base_yydebug; |
| 41 | #endif |
| 42 | |
| 43 | /* Token type. */ |
| 44 | #ifndef YYTOKENTYPE |
| 45 | # define YYTOKENTYPE |
| 46 | enum yytokentype |
| 47 | { |
| 48 | IDENT = 258, |
| 49 | FCONST = 259, |
| 50 | SCONST = 260, |
| 51 | BCONST = 261, |
| 52 | XCONST = 262, |
| 53 | Op = 263, |
| 54 | ICONST = 264, |
| 55 | PARAM = 265, |
| 56 | TYPECAST = 266, |
| 57 | DOT_DOT = 267, |
| 58 | COLON_EQUALS = 268, |
| 59 | EQUALS_GREATER = 269, |
| 60 | LESS_EQUALS = 270, |
| 61 | GREATER_EQUALS = 271, |
| 62 | NOT_EQUALS = 272, |
| 63 | ABORT_P = 273, |
| 64 | ABSOLUTE_P = 274, |
| 65 | ACCESS = 275, |
| 66 | ACTION = 276, |
| 67 | ADD_P = 277, |
| 68 | ADMIN = 278, |
| 69 | AFTER = 279, |
| 70 | AGGREGATE = 280, |
| 71 | ALL = 281, |
| 72 | ALSO = 282, |
| 73 | ALTER = 283, |
| 74 | ALWAYS = 284, |
| 75 | ANALYSE = 285, |
| 76 | ANALYZE = 286, |
| 77 | AND = 287, |
| 78 | ANY = 288, |
| 79 | ARRAY = 289, |
| 80 | AS = 290, |
| 81 | ASC = 291, |
| 82 | ASSERTION = 292, |
| 83 | ASSIGNMENT = 293, |
| 84 | ASYMMETRIC = 294, |
| 85 | AT = 295, |
| 86 | ATTACH = 296, |
| 87 | ATTRIBUTE = 297, |
| 88 | AUTHORIZATION = 298, |
| 89 | BACKWARD = 299, |
| 90 | BEFORE = 300, |
| 91 | BEGIN_P = 301, |
| 92 | BETWEEN = 302, |
| 93 | BIGINT = 303, |
| 94 | BINARY = 304, |
| 95 | BIT = 305, |
| 96 | BOOLEAN_P = 306, |
| 97 | BOTH = 307, |
| 98 | BY = 308, |
| 99 | CACHE = 309, |
| 100 | CALL = 310, |
| 101 | CALLED = 311, |
| 102 | CASCADE = 312, |
| 103 | CASCADED = 313, |
| 104 | CASE = 314, |
| 105 | CAST = 315, |
| 106 | CATALOG_P = 316, |
| 107 | CHAIN = 317, |
| 108 | CHAR_P = 318, |
| 109 | CHARACTER = 319, |
| 110 | CHARACTERISTICS = 320, |
| 111 | CHECK = 321, |
| 112 | CHECKPOINT = 322, |
| 113 | CLASS = 323, |
| 114 | CLOSE = 324, |
| 115 | CLUSTER = 325, |
| 116 | COALESCE = 326, |
| 117 | COLLATE = 327, |
| 118 | COLLATION = 328, |
| 119 | COLUMN = 329, |
| 120 | COLUMNS = 330, |
| 121 | = 331, |
| 122 | = 332, |
| 123 | COMMIT = 333, |
| 124 | COMMITTED = 334, |
| 125 | CONCURRENTLY = 335, |
| 126 | CONFIGURATION = 336, |
| 127 | CONFLICT = 337, |
| 128 | CONNECTION = 338, |
| 129 | CONSTRAINT = 339, |
| 130 | CONSTRAINTS = 340, |
| 131 | CONTENT_P = 341, |
| 132 | CONTINUE_P = 342, |
| 133 | CONVERSION_P = 343, |
| 134 | COPY = 344, |
| 135 | COST = 345, |
| 136 | CREATE = 346, |
| 137 | CROSS = 347, |
| 138 | CSV = 348, |
| 139 | CUBE = 349, |
| 140 | CURRENT_P = 350, |
| 141 | CURRENT_CATALOG = 351, |
| 142 | CURRENT_DATE = 352, |
| 143 | CURRENT_ROLE = 353, |
| 144 | CURRENT_SCHEMA = 354, |
| 145 | CURRENT_TIME = 355, |
| 146 | CURRENT_TIMESTAMP = 356, |
| 147 | CURRENT_USER = 357, |
| 148 | CURSOR = 358, |
| 149 | CYCLE = 359, |
| 150 | DATA_P = 360, |
| 151 | DATABASE = 361, |
| 152 | DAY_P = 362, |
| 153 | DEALLOCATE = 363, |
| 154 | DEC = 364, |
| 155 | DECIMAL_P = 365, |
| 156 | DECLARE = 366, |
| 157 | DEFAULT = 367, |
| 158 | DEFAULTS = 368, |
| 159 | DEFERRABLE = 369, |
| 160 | DEFERRED = 370, |
| 161 | DEFINER = 371, |
| 162 | DELETE_P = 372, |
| 163 | DELIMITER = 373, |
| 164 | DELIMITERS = 374, |
| 165 | DEPENDS = 375, |
| 166 | DESC = 376, |
| 167 | DETACH = 377, |
| 168 | DICTIONARY = 378, |
| 169 | DISABLE_P = 379, |
| 170 | DISCARD = 380, |
| 171 | DISTINCT = 381, |
| 172 | DO = 382, |
| 173 | DOCUMENT_P = 383, |
| 174 | DOMAIN_P = 384, |
| 175 | DOUBLE_P = 385, |
| 176 | DROP = 386, |
| 177 | EACH = 387, |
| 178 | ELSE = 388, |
| 179 | ENABLE_P = 389, |
| 180 | ENCODING = 390, |
| 181 | ENCRYPTED = 391, |
| 182 | END_P = 392, |
| 183 | ENUM_P = 393, |
| 184 | ESCAPE = 394, |
| 185 | EVENT = 395, |
| 186 | EXCEPT = 396, |
| 187 | EXCLUDE = 397, |
| 188 | EXCLUDING = 398, |
| 189 | EXCLUSIVE = 399, |
| 190 | EXECUTE = 400, |
| 191 | EXISTS = 401, |
| 192 | EXPLAIN = 402, |
| 193 | EXTENSION = 403, |
| 194 | EXTERNAL = 404, |
| 195 | = 405, |
| 196 | FALSE_P = 406, |
| 197 | FAMILY = 407, |
| 198 | FETCH = 408, |
| 199 | FILTER = 409, |
| 200 | FIRST_P = 410, |
| 201 | FLOAT_P = 411, |
| 202 | FOLLOWING = 412, |
| 203 | FOR = 413, |
| 204 | FORCE = 414, |
| 205 | FOREIGN = 415, |
| 206 | FORWARD = 416, |
| 207 | FREEZE = 417, |
| 208 | FROM = 418, |
| 209 | FULL = 419, |
| 210 | FUNCTION = 420, |
| 211 | FUNCTIONS = 421, |
| 212 | GENERATED = 422, |
| 213 | GLOBAL = 423, |
| 214 | GRANT = 424, |
| 215 | GRANTED = 425, |
| 216 | GREATEST = 426, |
| 217 | GROUP_P = 427, |
| 218 | GROUPING = 428, |
| 219 | GROUPS = 429, |
| 220 | HANDLER = 430, |
| 221 | HAVING = 431, |
| 222 | = 432, |
| 223 | HOLD = 433, |
| 224 | HOUR_P = 434, |
| 225 | IDENTITY_P = 435, |
| 226 | IF_P = 436, |
| 227 | ILIKE = 437, |
| 228 | IMMEDIATE = 438, |
| 229 | IMMUTABLE = 439, |
| 230 | IMPLICIT_P = 440, |
| 231 | IMPORT_P = 441, |
| 232 | IN_P = 442, |
| 233 | INCLUDE = 443, |
| 234 | INCLUDING = 444, |
| 235 | INCREMENT = 445, |
| 236 | INDEX = 446, |
| 237 | INDEXES = 447, |
| 238 | INHERIT = 448, |
| 239 | INHERITS = 449, |
| 240 | INITIALLY = 450, |
| 241 | INLINE_P = 451, |
| 242 | INNER_P = 452, |
| 243 | INOUT = 453, |
| 244 | INPUT_P = 454, |
| 245 | INSENSITIVE = 455, |
| 246 | INSERT = 456, |
| 247 | INSTEAD = 457, |
| 248 | INT_P = 458, |
| 249 | INTEGER = 459, |
| 250 | INTERSECT = 460, |
| 251 | INTERVAL = 461, |
| 252 | INTO = 462, |
| 253 | INVOKER = 463, |
| 254 | IS = 464, |
| 255 | ISNULL = 465, |
| 256 | ISOLATION = 466, |
| 257 | JOIN = 467, |
| 258 | KEY = 468, |
| 259 | LABEL = 469, |
| 260 | LANGUAGE = 470, |
| 261 | LARGE_P = 471, |
| 262 | LAST_P = 472, |
| 263 | LATERAL_P = 473, |
| 264 | LEADING = 474, |
| 265 | LEAKPROOF = 475, |
| 266 | LEAST = 476, |
| 267 | LEFT = 477, |
| 268 | LEVEL = 478, |
| 269 | LIKE = 479, |
| 270 | LIMIT = 480, |
| 271 | LISTEN = 481, |
| 272 | LOAD = 482, |
| 273 | LOCAL = 483, |
| 274 | LOCALTIME = 484, |
| 275 | LOCALTIMESTAMP = 485, |
| 276 | LOCATION = 486, |
| 277 | LOCK_P = 487, |
| 278 | LOCKED = 488, |
| 279 | LOGGED = 489, |
| 280 | MAPPING = 490, |
| 281 | MATCH = 491, |
| 282 | MATERIALIZED = 492, |
| 283 | MAXVALUE = 493, |
| 284 | METHOD = 494, |
| 285 | MINUTE_P = 495, |
| 286 | MINVALUE = 496, |
| 287 | MODE = 497, |
| 288 | MONTH_P = 498, |
| 289 | MOVE = 499, |
| 290 | NAME_P = 500, |
| 291 | NAMES = 501, |
| 292 | NATIONAL = 502, |
| 293 | NATURAL = 503, |
| 294 | NCHAR = 504, |
| 295 | NEW = 505, |
| 296 | NEXT = 506, |
| 297 | NO = 507, |
| 298 | NONE = 508, |
| 299 | NOT = 509, |
| 300 | NOTHING = 510, |
| 301 | NOTIFY = 511, |
| 302 | NOTNULL = 512, |
| 303 | NOWAIT = 513, |
| 304 | NULL_P = 514, |
| 305 | NULLIF = 515, |
| 306 | NULLS_P = 516, |
| 307 | NUMERIC = 517, |
| 308 | OBJECT_P = 518, |
| 309 | OF = 519, |
| 310 | OFF = 520, |
| 311 | OFFSET = 521, |
| 312 | OIDS = 522, |
| 313 | OLD = 523, |
| 314 | ON = 524, |
| 315 | ONLY = 525, |
| 316 | OPERATOR = 526, |
| 317 | OPTION = 527, |
| 318 | OPTIONS = 528, |
| 319 | OR = 529, |
| 320 | ORDER = 530, |
| 321 | ORDINALITY = 531, |
| 322 | OTHERS = 532, |
| 323 | OUT_P = 533, |
| 324 | OUTER_P = 534, |
| 325 | OVER = 535, |
| 326 | OVERLAPS = 536, |
| 327 | OVERLAY = 537, |
| 328 | OVERRIDING = 538, |
| 329 | OWNED = 539, |
| 330 | OWNER = 540, |
| 331 | PARALLEL = 541, |
| 332 | PARSER = 542, |
| 333 | PARTIAL = 543, |
| 334 | PARTITION = 544, |
| 335 | PASSING = 545, |
| 336 | PASSWORD = 546, |
| 337 | PLACING = 547, |
| 338 | PLANS = 548, |
| 339 | POLICY = 549, |
| 340 | POSITION = 550, |
| 341 | PRECEDING = 551, |
| 342 | PRECISION = 552, |
| 343 | PRESERVE = 553, |
| 344 | PREPARE = 554, |
| 345 | PREPARED = 555, |
| 346 | PRIMARY = 556, |
| 347 | PRIOR = 557, |
| 348 | PRIVILEGES = 558, |
| 349 | PROCEDURAL = 559, |
| 350 | PROCEDURE = 560, |
| 351 | PROCEDURES = 561, |
| 352 | PROGRAM = 562, |
| 353 | PUBLICATION = 563, |
| 354 | QUOTE = 564, |
| 355 | RANGE = 565, |
| 356 | READ = 566, |
| 357 | REAL = 567, |
| 358 | REASSIGN = 568, |
| 359 | RECHECK = 569, |
| 360 | RECURSIVE = 570, |
| 361 | REF = 571, |
| 362 | REFERENCES = 572, |
| 363 | REFERENCING = 573, |
| 364 | REFRESH = 574, |
| 365 | REINDEX = 575, |
| 366 | RELATIVE_P = 576, |
| 367 | RELEASE = 577, |
| 368 | RENAME = 578, |
| 369 | REPEATABLE = 579, |
| 370 | REPLACE = 580, |
| 371 | REPLICA = 581, |
| 372 | RESET = 582, |
| 373 | RESTART = 583, |
| 374 | RESTRICT = 584, |
| 375 | RETURNING = 585, |
| 376 | RETURNS = 586, |
| 377 | REVOKE = 587, |
| 378 | RIGHT = 588, |
| 379 | ROLE = 589, |
| 380 | ROLLBACK = 590, |
| 381 | ROLLUP = 591, |
| 382 | ROUTINE = 592, |
| 383 | ROUTINES = 593, |
| 384 | ROW = 594, |
| 385 | ROWS = 595, |
| 386 | RULE = 596, |
| 387 | SAVEPOINT = 597, |
| 388 | SCHEMA = 598, |
| 389 | SCHEMAS = 599, |
| 390 | SCROLL = 600, |
| 391 | SEARCH = 601, |
| 392 | SECOND_P = 602, |
| 393 | SECURITY = 603, |
| 394 | SELECT = 604, |
| 395 | SEQUENCE = 605, |
| 396 | SEQUENCES = 606, |
| 397 | SERIALIZABLE = 607, |
| 398 | SERVER = 608, |
| 399 | SESSION = 609, |
| 400 | SESSION_USER = 610, |
| 401 | SET = 611, |
| 402 | SETS = 612, |
| 403 | SETOF = 613, |
| 404 | SHARE = 614, |
| 405 | SHOW = 615, |
| 406 | SIMILAR = 616, |
| 407 | SIMPLE = 617, |
| 408 | SKIP = 618, |
| 409 | SMALLINT = 619, |
| 410 | SNAPSHOT = 620, |
| 411 | SOME = 621, |
| 412 | SQL_P = 622, |
| 413 | STABLE = 623, |
| 414 | STANDALONE_P = 624, |
| 415 | START = 625, |
| 416 | STATEMENT = 626, |
| 417 | STATISTICS = 627, |
| 418 | STDIN = 628, |
| 419 | STDOUT = 629, |
| 420 | STORAGE = 630, |
| 421 | STORED = 631, |
| 422 | STRICT_P = 632, |
| 423 | STRIP_P = 633, |
| 424 | SUBSCRIPTION = 634, |
| 425 | SUBSTRING = 635, |
| 426 | SUPPORT = 636, |
| 427 | SYMMETRIC = 637, |
| 428 | SYSID = 638, |
| 429 | SYSTEM_P = 639, |
| 430 | TABLE = 640, |
| 431 | TABLES = 641, |
| 432 | TABLESAMPLE = 642, |
| 433 | TABLESPACE = 643, |
| 434 | TEMP = 644, |
| 435 | TEMPLATE = 645, |
| 436 | TEMPORARY = 646, |
| 437 | TEXT_P = 647, |
| 438 | THEN = 648, |
| 439 | TIES = 649, |
| 440 | TIME = 650, |
| 441 | TIMESTAMP = 651, |
| 442 | TO = 652, |
| 443 | TRAILING = 653, |
| 444 | TRANSACTION = 654, |
| 445 | TRANSFORM = 655, |
| 446 | TREAT = 656, |
| 447 | TRIGGER = 657, |
| 448 | TRIM = 658, |
| 449 | TRUE_P = 659, |
| 450 | TRUNCATE = 660, |
| 451 | TRUSTED = 661, |
| 452 | TYPE_P = 662, |
| 453 | TYPES_P = 663, |
| 454 | UNBOUNDED = 664, |
| 455 | UNCOMMITTED = 665, |
| 456 | UNENCRYPTED = 666, |
| 457 | UNION = 667, |
| 458 | UNIQUE = 668, |
| 459 | UNKNOWN = 669, |
| 460 | UNLISTEN = 670, |
| 461 | UNLOGGED = 671, |
| 462 | UNTIL = 672, |
| 463 | UPDATE = 673, |
| 464 | USER = 674, |
| 465 | USING = 675, |
| 466 | VACUUM = 676, |
| 467 | VALID = 677, |
| 468 | VALIDATE = 678, |
| 469 | VALIDATOR = 679, |
| 470 | VALUE_P = 680, |
| 471 | VALUES = 681, |
| 472 | VARCHAR = 682, |
| 473 | VARIADIC = 683, |
| 474 | VARYING = 684, |
| 475 | VERBOSE = 685, |
| 476 | VERSION_P = 686, |
| 477 | VIEW = 687, |
| 478 | VIEWS = 688, |
| 479 | VOLATILE = 689, |
| 480 | WHEN = 690, |
| 481 | WHERE = 691, |
| 482 | WHITESPACE_P = 692, |
| 483 | WINDOW = 693, |
| 484 | WITH = 694, |
| 485 | WITHIN = 695, |
| 486 | WITHOUT = 696, |
| 487 | WORK = 697, |
| 488 | WRAPPER = 698, |
| 489 | WRITE = 699, |
| 490 | XML_P = 700, |
| 491 | XMLATTRIBUTES = 701, |
| 492 | XMLCONCAT = 702, |
| 493 | XMLELEMENT = 703, |
| 494 | XMLEXISTS = 704, |
| 495 | XMLFOREST = 705, |
| 496 | XMLNAMESPACES = 706, |
| 497 | XMLPARSE = 707, |
| 498 | XMLPI = 708, |
| 499 | XMLROOT = 709, |
| 500 | XMLSERIALIZE = 710, |
| 501 | XMLTABLE = 711, |
| 502 | YEAR_P = 712, |
| 503 | YES_P = 713, |
| 504 | ZONE = 714, |
| 505 | NOT_LA = 715, |
| 506 | NULLS_LA = 716, |
| 507 | WITH_LA = 717, |
| 508 | POSTFIXOP = 718, |
| 509 | UMINUS = 719 |
| 510 | }; |
| 511 | #endif |
| 512 | |
| 513 | /* Value type. */ |
| 514 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED |
| 515 | |
| 516 | union YYSTYPE |
| 517 | { |
| 518 | #line 203 "gram.y" /* yacc.c:1909 */ |
| 519 | |
| 520 | core_YYSTYPE core_yystype; |
| 521 | /* these fields must match core_YYSTYPE: */ |
| 522 | int ival; |
| 523 | char *str; |
| 524 | const char *keyword; |
| 525 | |
| 526 | char chr; |
| 527 | bool boolean; |
| 528 | JoinType jtype; |
| 529 | DropBehavior dbehavior; |
| 530 | OnCommitAction oncommit; |
| 531 | List *list; |
| 532 | Node *node; |
| 533 | Value *value; |
| 534 | ObjectType objtype; |
| 535 | TypeName *typnam; |
| 536 | FunctionParameter *fun_param; |
| 537 | FunctionParameterMode fun_param_mode; |
| 538 | ObjectWithArgs *objwithargs; |
| 539 | DefElem *defelt; |
| 540 | SortBy *sortby; |
| 541 | WindowDef *windef; |
| 542 | JoinExpr *jexpr; |
| 543 | IndexElem *ielem; |
| 544 | Alias *alias; |
| 545 | RangeVar *range; |
| 546 | IntoClause *into; |
| 547 | WithClause *with; |
| 548 | InferClause *infer; |
| 549 | OnConflictClause *onconflict; |
| 550 | A_Indices *aind; |
| 551 | ResTarget *target; |
| 552 | struct PrivTarget *privtarget; |
| 553 | AccessPriv *accesspriv; |
| 554 | struct ImportQual *importqual; |
| 555 | InsertStmt *istmt; |
| 556 | VariableSetStmt *vsetstmt; |
| 557 | PartitionElem *partelem; |
| 558 | PartitionSpec *partspec; |
| 559 | PartitionBoundSpec *partboundspec; |
| 560 | RoleSpec *rolespec; |
| 561 | |
| 562 | #line 563 "gram.h" /* yacc.c:1909 */ |
| 563 | }; |
| 564 | |
| 565 | typedef union YYSTYPE YYSTYPE; |
| 566 | # define YYSTYPE_IS_TRIVIAL 1 |
| 567 | # define YYSTYPE_IS_DECLARED 1 |
| 568 | #endif |
| 569 | |
| 570 | /* Location type. */ |
| 571 | #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED |
| 572 | typedef struct YYLTYPE YYLTYPE; |
| 573 | struct YYLTYPE |
| 574 | { |
| 575 | int first_line; |
| 576 | int first_column; |
| 577 | int last_line; |
| 578 | int last_column; |
| 579 | }; |
| 580 | # define YYLTYPE_IS_DECLARED 1 |
| 581 | # define YYLTYPE_IS_TRIVIAL 1 |
| 582 | #endif |
| 583 | |
| 584 | |
| 585 | |
| 586 | int base_yyparse (core_yyscan_t yyscanner); |
| 587 | |
| 588 | #endif /* !YY_BASE_YY_GRAM_H_INCLUDED */ |
| 589 | |