pg_query 4.2.2 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (486) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +6 -8
  4. data/Rakefile +3 -3
  5. data/ext/pg_query/extconf.rb +1 -3
  6. data/ext/pg_query/include/access/amapi.h +3 -1
  7. data/ext/pg_query/include/access/attmap.h +5 -3
  8. data/ext/pg_query/include/access/attnum.h +1 -1
  9. data/ext/pg_query/include/access/clog.h +1 -1
  10. data/ext/pg_query/include/access/commit_ts.h +1 -1
  11. data/ext/pg_query/include/access/detoast.h +1 -1
  12. data/ext/pg_query/include/access/genam.h +7 -5
  13. data/ext/pg_query/include/access/gin.h +16 -3
  14. data/ext/pg_query/include/access/htup.h +1 -1
  15. data/ext/pg_query/include/access/htup_details.h +6 -2
  16. data/ext/pg_query/include/access/itup.h +61 -58
  17. data/ext/pg_query/include/access/parallel.h +2 -2
  18. data/ext/pg_query/include/access/printtup.h +1 -1
  19. data/ext/pg_query/include/access/relation.h +1 -1
  20. data/ext/pg_query/include/access/relscan.h +1 -1
  21. data/ext/pg_query/include/access/rmgrlist.h +2 -2
  22. data/ext/pg_query/include/access/sdir.h +12 -3
  23. data/ext/pg_query/include/access/skey.h +1 -1
  24. data/ext/pg_query/include/access/stratnum.h +1 -1
  25. data/ext/pg_query/include/access/sysattr.h +1 -1
  26. data/ext/pg_query/include/access/table.h +1 -1
  27. data/ext/pg_query/include/access/tableam.h +68 -45
  28. data/ext/pg_query/include/access/toast_compression.h +1 -1
  29. data/ext/pg_query/include/access/transam.h +1 -1
  30. data/ext/pg_query/include/access/tsmapi.h +82 -0
  31. data/ext/pg_query/include/access/tupconvert.h +5 -2
  32. data/ext/pg_query/include/access/tupdesc.h +2 -2
  33. data/ext/pg_query/include/access/tupmacs.h +58 -98
  34. data/ext/pg_query/include/access/twophase.h +2 -2
  35. data/ext/pg_query/include/access/xact.h +25 -18
  36. data/ext/pg_query/include/access/xlog.h +15 -16
  37. data/ext/pg_query/include/access/xlog_internal.h +100 -62
  38. data/ext/pg_query/include/access/xlogbackup.h +41 -0
  39. data/ext/pg_query/include/access/xlogdefs.h +6 -25
  40. data/ext/pg_query/include/access/xlogprefetcher.h +1 -1
  41. data/ext/pg_query/include/access/xlogreader.h +7 -6
  42. data/ext/pg_query/include/access/xlogrecord.h +17 -5
  43. data/ext/pg_query/include/access/xlogrecovery.h +4 -3
  44. data/ext/pg_query/include/archive/archive_module.h +59 -0
  45. data/ext/pg_query/include/c.h +144 -156
  46. data/ext/pg_query/include/catalog/catalog.h +4 -3
  47. data/ext/pg_query/include/catalog/catversion.h +6 -2
  48. data/ext/pg_query/include/catalog/dependency.h +5 -4
  49. data/ext/pg_query/include/catalog/genbki.h +7 -6
  50. data/ext/pg_query/include/catalog/index.h +4 -4
  51. data/ext/pg_query/include/catalog/indexing.h +1 -1
  52. data/ext/pg_query/include/catalog/namespace.h +2 -2
  53. data/ext/pg_query/include/catalog/objectaccess.h +10 -8
  54. data/ext/pg_query/include/catalog/objectaddress.h +3 -3
  55. data/ext/pg_query/include/catalog/pg_aggregate.h +1 -1
  56. data/ext/pg_query/include/catalog/pg_aggregate_d.h +1 -1
  57. data/ext/pg_query/include/catalog/pg_am.h +1 -1
  58. data/ext/pg_query/include/catalog/pg_am_d.h +1 -1
  59. data/ext/pg_query/include/catalog/pg_attribute.h +19 -17
  60. data/ext/pg_query/include/catalog/pg_attribute_d.h +19 -19
  61. data/ext/pg_query/include/catalog/pg_authid.h +1 -1
  62. data/ext/pg_query/include/catalog/pg_authid_d.h +3 -1
  63. data/ext/pg_query/include/catalog/pg_class.h +1 -1
  64. data/ext/pg_query/include/catalog/pg_class_d.h +1 -1
  65. data/ext/pg_query/include/catalog/pg_collation.h +3 -1
  66. data/ext/pg_query/include/catalog/pg_collation_d.h +4 -3
  67. data/ext/pg_query/include/catalog/pg_constraint.h +2 -2
  68. data/ext/pg_query/include/catalog/pg_constraint_d.h +1 -1
  69. data/ext/pg_query/include/catalog/pg_control.h +9 -1
  70. data/ext/pg_query/include/catalog/pg_conversion.h +2 -2
  71. data/ext/pg_query/include/catalog/pg_conversion_d.h +1 -1
  72. data/ext/pg_query/include/catalog/pg_database.h +124 -0
  73. data/ext/pg_query/include/catalog/pg_database_d.h +52 -0
  74. data/ext/pg_query/include/catalog/pg_depend.h +1 -1
  75. data/ext/pg_query/include/catalog/pg_depend_d.h +1 -1
  76. data/ext/pg_query/include/catalog/pg_event_trigger.h +1 -1
  77. data/ext/pg_query/include/catalog/pg_event_trigger_d.h +1 -1
  78. data/ext/pg_query/include/catalog/pg_index.h +1 -1
  79. data/ext/pg_query/include/catalog/pg_index_d.h +1 -1
  80. data/ext/pg_query/include/catalog/pg_language.h +1 -1
  81. data/ext/pg_query/include/catalog/pg_language_d.h +1 -1
  82. data/ext/pg_query/include/catalog/pg_namespace.h +1 -1
  83. data/ext/pg_query/include/catalog/pg_namespace_d.h +1 -1
  84. data/ext/pg_query/include/catalog/pg_opclass.h +1 -1
  85. data/ext/pg_query/include/catalog/pg_opclass_d.h +1 -1
  86. data/ext/pg_query/include/catalog/pg_operator.h +1 -1
  87. data/ext/pg_query/include/catalog/pg_operator_d.h +1 -1
  88. data/ext/pg_query/include/catalog/pg_opfamily.h +3 -2
  89. data/ext/pg_query/include/catalog/pg_opfamily_d.h +4 -2
  90. data/ext/pg_query/include/catalog/pg_partitioned_table.h +1 -1
  91. data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +1 -1
  92. data/ext/pg_query/include/catalog/pg_proc.h +1 -1
  93. data/ext/pg_query/include/catalog/pg_proc_d.h +1 -1
  94. data/ext/pg_query/include/catalog/pg_publication.h +2 -5
  95. data/ext/pg_query/include/catalog/pg_publication_d.h +1 -1
  96. data/ext/pg_query/include/catalog/pg_replication_origin.h +1 -1
  97. data/ext/pg_query/include/catalog/pg_replication_origin_d.h +1 -1
  98. data/ext/pg_query/include/catalog/pg_statistic.h +1 -1
  99. data/ext/pg_query/include/catalog/pg_statistic_d.h +1 -1
  100. data/ext/pg_query/include/catalog/pg_statistic_ext.h +1 -1
  101. data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +1 -1
  102. data/ext/pg_query/include/catalog/pg_transform.h +1 -1
  103. data/ext/pg_query/include/catalog/pg_transform_d.h +1 -1
  104. data/ext/pg_query/include/catalog/pg_trigger.h +1 -1
  105. data/ext/pg_query/include/catalog/pg_trigger_d.h +1 -1
  106. data/ext/pg_query/include/catalog/pg_ts_config.h +1 -1
  107. data/ext/pg_query/include/catalog/pg_ts_config_d.h +1 -1
  108. data/ext/pg_query/include/catalog/pg_ts_dict.h +1 -1
  109. data/ext/pg_query/include/catalog/pg_ts_dict_d.h +1 -1
  110. data/ext/pg_query/include/catalog/pg_ts_parser.h +1 -1
  111. data/ext/pg_query/include/catalog/pg_ts_parser_d.h +1 -1
  112. data/ext/pg_query/include/catalog/pg_ts_template.h +1 -1
  113. data/ext/pg_query/include/catalog/pg_ts_template_d.h +1 -1
  114. data/ext/pg_query/include/catalog/pg_type.h +1 -1
  115. data/ext/pg_query/include/catalog/pg_type_d.h +1 -1
  116. data/ext/pg_query/include/catalog/storage.h +6 -6
  117. data/ext/pg_query/include/commands/async.h +1 -1
  118. data/ext/pg_query/include/commands/dbcommands.h +2 -1
  119. data/ext/pg_query/include/commands/defrem.h +2 -1
  120. data/ext/pg_query/include/commands/event_trigger.h +1 -1
  121. data/ext/pg_query/include/commands/explain.h +3 -1
  122. data/ext/pg_query/include/commands/prepare.h +1 -1
  123. data/ext/pg_query/include/commands/tablespace.h +4 -4
  124. data/ext/pg_query/include/commands/trigger.h +15 -14
  125. data/ext/pg_query/include/commands/user.h +9 -3
  126. data/ext/pg_query/include/commands/vacuum.h +60 -14
  127. data/ext/pg_query/include/common/cryptohash.h +39 -0
  128. data/ext/pg_query/include/common/file_perm.h +1 -1
  129. data/ext/pg_query/include/common/hashfn.h +1 -1
  130. data/ext/pg_query/include/common/int.h +437 -0
  131. data/ext/pg_query/include/common/ip.h +4 -2
  132. data/ext/pg_query/include/common/keywords.h +1 -1
  133. data/ext/pg_query/include/common/kwlookup.h +2 -2
  134. data/ext/pg_query/include/common/pg_prng.h +3 -2
  135. data/ext/pg_query/include/common/relpath.h +20 -13
  136. data/ext/pg_query/include/common/scram-common.h +70 -0
  137. data/ext/pg_query/include/common/sha2.h +32 -0
  138. data/ext/pg_query/include/common/string.h +5 -3
  139. data/ext/pg_query/include/common/unicode_east_asian_fw_table.h +10 -10
  140. data/ext/pg_query/include/common/{unicode_combining_table.h → unicode_nonspacing_table.h} +31 -13
  141. data/ext/pg_query/include/copyfuncs.funcs.c +5013 -0
  142. data/ext/pg_query/include/copyfuncs.switch.c +938 -0
  143. data/ext/pg_query/include/datatype/timestamp.h +11 -4
  144. data/ext/pg_query/include/equalfuncs.funcs.c +3097 -0
  145. data/ext/pg_query/include/equalfuncs.switch.c +785 -0
  146. data/ext/pg_query/include/executor/execdesc.h +1 -1
  147. data/ext/pg_query/include/executor/executor.h +34 -17
  148. data/ext/pg_query/include/executor/functions.h +1 -1
  149. data/ext/pg_query/include/executor/instrument.h +1 -1
  150. data/ext/pg_query/include/executor/spi.h +2 -2
  151. data/ext/pg_query/include/executor/tablefunc.h +1 -1
  152. data/ext/pg_query/include/executor/tuptable.h +18 -11
  153. data/ext/pg_query/include/fmgr.h +21 -2
  154. data/ext/pg_query/include/foreign/fdwapi.h +294 -0
  155. data/ext/pg_query/include/funcapi.h +12 -12
  156. data/ext/pg_query/include/gram.h +1127 -0
  157. data/ext/pg_query/include/{parser/gramparse.h → gramparse.h} +4 -4
  158. data/ext/pg_query/include/jit/jit.h +2 -2
  159. data/ext/pg_query/include/kwlist_d.h +534 -510
  160. data/ext/pg_query/include/lib/dshash.h +4 -1
  161. data/ext/pg_query/include/lib/ilist.h +435 -22
  162. data/ext/pg_query/include/lib/pairingheap.h +1 -1
  163. data/ext/pg_query/include/lib/simplehash.h +9 -9
  164. data/ext/pg_query/include/lib/sort_template.h +1 -1
  165. data/ext/pg_query/include/lib/stringinfo.h +3 -3
  166. data/ext/pg_query/include/libpq/auth.h +8 -2
  167. data/ext/pg_query/include/libpq/crypt.h +1 -1
  168. data/ext/pg_query/include/libpq/hba.h +24 -17
  169. data/ext/pg_query/include/libpq/libpq-be.h +36 -25
  170. data/ext/pg_query/include/libpq/libpq.h +1 -1
  171. data/ext/pg_query/include/libpq/pqcomm.h +10 -41
  172. data/ext/pg_query/include/libpq/pqformat.h +2 -2
  173. data/ext/pg_query/include/libpq/pqsignal.h +22 -10
  174. data/ext/pg_query/include/libpq/sasl.h +136 -0
  175. data/ext/pg_query/include/libpq/scram.h +37 -0
  176. data/ext/pg_query/include/mb/pg_wchar.h +35 -18
  177. data/ext/pg_query/include/mb/stringinfo_mb.h +1 -1
  178. data/ext/pg_query/include/miscadmin.h +26 -14
  179. data/ext/pg_query/include/nodes/bitmapset.h +11 -7
  180. data/ext/pg_query/include/nodes/execnodes.h +83 -30
  181. data/ext/pg_query/include/nodes/extensible.h +5 -3
  182. data/ext/pg_query/include/nodes/lockoptions.h +1 -1
  183. data/ext/pg_query/include/nodes/makefuncs.h +14 -2
  184. data/ext/pg_query/include/nodes/memnodes.h +7 -4
  185. data/ext/pg_query/include/nodes/miscnodes.h +56 -0
  186. data/ext/pg_query/include/nodes/nodeFuncs.h +89 -29
  187. data/ext/pg_query/include/nodes/nodes.h +95 -510
  188. data/ext/pg_query/include/nodes/nodetags.h +471 -0
  189. data/ext/pg_query/include/nodes/params.h +3 -3
  190. data/ext/pg_query/include/nodes/parsenodes.h +377 -139
  191. data/ext/pg_query/include/nodes/pathnodes.h +1090 -440
  192. data/ext/pg_query/include/nodes/pg_list.h +30 -7
  193. data/ext/pg_query/include/nodes/plannodes.h +367 -124
  194. data/ext/pg_query/include/nodes/primnodes.h +670 -222
  195. data/ext/pg_query/include/nodes/print.h +1 -1
  196. data/ext/pg_query/include/{utils → nodes}/queryjumble.h +5 -7
  197. data/ext/pg_query/include/nodes/replnodes.h +111 -0
  198. data/ext/pg_query/include/nodes/supportnodes.h +346 -0
  199. data/ext/pg_query/include/nodes/tidbitmap.h +1 -1
  200. data/ext/pg_query/include/nodes/value.h +12 -2
  201. data/ext/pg_query/include/optimizer/cost.h +6 -4
  202. data/ext/pg_query/include/optimizer/geqo.h +1 -1
  203. data/ext/pg_query/include/optimizer/geqo_gene.h +1 -1
  204. data/ext/pg_query/include/optimizer/optimizer.h +8 -8
  205. data/ext/pg_query/include/optimizer/paths.h +16 -7
  206. data/ext/pg_query/include/optimizer/planmain.h +3 -6
  207. data/ext/pg_query/include/parser/analyze.h +4 -3
  208. data/ext/pg_query/include/parser/kwlist.h +12 -1
  209. data/ext/pg_query/include/parser/parse_agg.h +4 -2
  210. data/ext/pg_query/include/parser/parse_coerce.h +3 -1
  211. data/ext/pg_query/include/parser/parse_expr.h +1 -1
  212. data/ext/pg_query/include/parser/parse_func.h +1 -1
  213. data/ext/pg_query/include/parser/parse_node.h +22 -4
  214. data/ext/pg_query/include/parser/parse_oper.h +3 -3
  215. data/ext/pg_query/include/parser/parse_relation.h +8 -3
  216. data/ext/pg_query/include/parser/parse_type.h +4 -3
  217. data/ext/pg_query/include/parser/parser.h +1 -1
  218. data/ext/pg_query/include/parser/parsetree.h +1 -1
  219. data/ext/pg_query/include/parser/scanner.h +2 -2
  220. data/ext/pg_query/include/parser/scansup.h +1 -1
  221. data/ext/pg_query/include/partitioning/partdefs.h +1 -1
  222. data/ext/pg_query/include/pg_config.h +23 -217
  223. data/ext/pg_query/include/pg_config_manual.h +8 -46
  224. data/ext/pg_query/include/pg_getopt.h +1 -1
  225. data/ext/pg_query/include/pg_query.h +27 -3
  226. data/ext/pg_query/include/pg_query_enum_defs.c +311 -149
  227. data/ext/pg_query/include/pg_query_fingerprint_conds.c +545 -489
  228. data/ext/pg_query/include/pg_query_fingerprint_defs.c +5092 -4432
  229. data/ext/pg_query/include/pg_query_outfuncs_conds.c +385 -343
  230. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1294 -1161
  231. data/ext/pg_query/include/pg_query_readfuncs_conds.c +137 -123
  232. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1657 -1496
  233. data/ext/pg_query/include/pg_trace.h +1 -1
  234. data/ext/pg_query/include/pgstat.h +172 -93
  235. data/ext/pg_query/include/pgtime.h +3 -3
  236. data/ext/pg_query/include/pl_gram.h +64 -62
  237. data/ext/pg_query/include/pl_reserved_kwlist.h +1 -1
  238. data/ext/pg_query/include/pl_reserved_kwlist_d.h +1 -1
  239. data/ext/pg_query/include/pl_unreserved_kwlist.h +2 -1
  240. data/ext/pg_query/include/pl_unreserved_kwlist_d.h +48 -46
  241. data/ext/pg_query/include/plpgsql.h +17 -22
  242. data/ext/pg_query/include/port/atomics/arch-arm.h +3 -3
  243. data/ext/pg_query/include/port/atomics/arch-ppc.h +21 -21
  244. data/ext/pg_query/include/port/atomics/arch-x86.h +2 -2
  245. data/ext/pg_query/include/port/atomics/fallback.h +3 -3
  246. data/ext/pg_query/include/port/atomics/generic-gcc.h +1 -1
  247. data/ext/pg_query/include/port/atomics/generic.h +1 -1
  248. data/ext/pg_query/include/port/atomics.h +2 -7
  249. data/ext/pg_query/include/port/pg_bitutils.h +62 -25
  250. data/ext/pg_query/include/port/pg_bswap.h +1 -1
  251. data/ext/pg_query/include/port/pg_crc32c.h +1 -1
  252. data/ext/pg_query/include/port/simd.h +375 -0
  253. data/ext/pg_query/include/port.h +42 -75
  254. data/ext/pg_query/include/portability/instr_time.h +81 -140
  255. data/ext/pg_query/include/postgres.h +205 -434
  256. data/ext/pg_query/include/postgres_ext.h +0 -1
  257. data/ext/pg_query/include/postmaster/autovacuum.h +1 -4
  258. data/ext/pg_query/include/postmaster/auxprocess.h +1 -1
  259. data/ext/pg_query/include/postmaster/bgworker.h +2 -2
  260. data/ext/pg_query/include/postmaster/bgworker_internals.h +1 -1
  261. data/ext/pg_query/include/postmaster/bgwriter.h +2 -2
  262. data/ext/pg_query/include/postmaster/fork_process.h +1 -1
  263. data/ext/pg_query/include/postmaster/interrupt.h +1 -1
  264. data/ext/pg_query/include/postmaster/pgarch.h +1 -38
  265. data/ext/pg_query/include/postmaster/postmaster.h +5 -2
  266. data/ext/pg_query/include/postmaster/startup.h +3 -1
  267. data/ext/pg_query/include/postmaster/syslogger.h +2 -2
  268. data/ext/pg_query/include/postmaster/walwriter.h +3 -1
  269. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +6186 -5585
  270. data/ext/pg_query/include/protobuf/pg_query.pb.h +112443 -91222
  271. data/ext/pg_query/include/regex/regex.h +9 -6
  272. data/ext/pg_query/include/replication/logicallauncher.h +6 -1
  273. data/ext/pg_query/include/replication/logicalproto.h +30 -10
  274. data/ext/pg_query/include/replication/logicalworker.h +14 -1
  275. data/ext/pg_query/include/replication/origin.h +4 -4
  276. data/ext/pg_query/include/replication/reorderbuffer.h +113 -45
  277. data/ext/pg_query/include/replication/slot.h +25 -6
  278. data/ext/pg_query/include/replication/syncrep.h +2 -8
  279. data/ext/pg_query/include/replication/walreceiver.h +15 -9
  280. data/ext/pg_query/include/replication/walsender.h +13 -13
  281. data/ext/pg_query/include/rewrite/prs2lock.h +1 -1
  282. data/ext/pg_query/include/rewrite/rewriteHandler.h +1 -4
  283. data/ext/pg_query/include/rewrite/rewriteManip.h +11 -2
  284. data/ext/pg_query/include/rewrite/rewriteSupport.h +1 -1
  285. data/ext/pg_query/include/src_backend_nodes_copyfuncs.funcs.c +5321 -0
  286. data/ext/pg_query/include/src_backend_nodes_equalfuncs.funcs.c +3354 -0
  287. data/ext/pg_query/include/storage/backendid.h +1 -1
  288. data/ext/pg_query/include/storage/block.h +24 -31
  289. data/ext/pg_query/include/storage/buf.h +1 -1
  290. data/ext/pg_query/include/storage/bufmgr.h +183 -87
  291. data/ext/pg_query/include/storage/bufpage.h +146 -93
  292. data/ext/pg_query/include/storage/condition_variable.h +2 -2
  293. data/ext/pg_query/include/storage/dsm.h +3 -6
  294. data/ext/pg_query/include/storage/dsm_impl.h +4 -1
  295. data/ext/pg_query/include/storage/fd.h +24 -20
  296. data/ext/pg_query/include/storage/fileset.h +1 -1
  297. data/ext/pg_query/include/storage/ipc.h +1 -1
  298. data/ext/pg_query/include/storage/item.h +1 -1
  299. data/ext/pg_query/include/storage/itemid.h +1 -1
  300. data/ext/pg_query/include/storage/itemptr.h +94 -57
  301. data/ext/pg_query/include/storage/large_object.h +1 -1
  302. data/ext/pg_query/include/storage/latch.h +9 -1
  303. data/ext/pg_query/include/storage/lmgr.h +6 -1
  304. data/ext/pg_query/include/storage/lock.h +21 -13
  305. data/ext/pg_query/include/storage/lockdefs.h +3 -3
  306. data/ext/pg_query/include/storage/lwlock.h +16 -2
  307. data/ext/pg_query/include/storage/off.h +1 -1
  308. data/ext/pg_query/include/storage/pg_sema.h +1 -1
  309. data/ext/pg_query/include/storage/pg_shmem.h +1 -1
  310. data/ext/pg_query/include/storage/pmsignal.h +1 -1
  311. data/ext/pg_query/include/storage/predicate.h +2 -2
  312. data/ext/pg_query/include/storage/proc.h +22 -17
  313. data/ext/pg_query/include/storage/procarray.h +3 -2
  314. data/ext/pg_query/include/storage/proclist_types.h +1 -1
  315. data/ext/pg_query/include/storage/procsignal.h +3 -1
  316. data/ext/pg_query/include/storage/relfilelocator.h +99 -0
  317. data/ext/pg_query/include/storage/s_lock.h +66 -309
  318. data/ext/pg_query/include/storage/sharedfileset.h +1 -1
  319. data/ext/pg_query/include/storage/shm_mq.h +1 -1
  320. data/ext/pg_query/include/storage/shm_toc.h +1 -1
  321. data/ext/pg_query/include/storage/shmem.h +1 -23
  322. data/ext/pg_query/include/storage/sinval.h +3 -3
  323. data/ext/pg_query/include/storage/sinvaladt.h +4 -2
  324. data/ext/pg_query/include/storage/smgr.h +12 -10
  325. data/ext/pg_query/include/storage/spin.h +1 -1
  326. data/ext/pg_query/include/storage/standby.h +9 -8
  327. data/ext/pg_query/include/storage/standbydefs.h +1 -1
  328. data/ext/pg_query/include/storage/sync.h +3 -3
  329. data/ext/pg_query/include/tcop/cmdtag.h +7 -2
  330. data/ext/pg_query/include/tcop/cmdtaglist.h +1 -1
  331. data/ext/pg_query/include/tcop/deparse_utility.h +1 -1
  332. data/ext/pg_query/include/tcop/dest.h +1 -3
  333. data/ext/pg_query/include/tcop/fastpath.h +1 -1
  334. data/ext/pg_query/include/tcop/pquery.h +1 -1
  335. data/ext/pg_query/include/tcop/tcopprot.h +1 -4
  336. data/ext/pg_query/include/tcop/utility.h +1 -1
  337. data/ext/pg_query/include/tsearch/ts_cache.h +2 -4
  338. data/ext/pg_query/include/utils/acl.h +26 -81
  339. data/ext/pg_query/include/utils/aclchk_internal.h +1 -1
  340. data/ext/pg_query/include/utils/array.h +19 -1
  341. data/ext/pg_query/include/utils/backend_progress.h +2 -1
  342. data/ext/pg_query/include/utils/backend_status.h +24 -3
  343. data/ext/pg_query/include/utils/builtins.h +14 -5
  344. data/ext/pg_query/include/utils/bytea.h +1 -1
  345. data/ext/pg_query/include/utils/catcache.h +1 -1
  346. data/ext/pg_query/include/utils/date.h +37 -9
  347. data/ext/pg_query/include/utils/datetime.h +41 -21
  348. data/ext/pg_query/include/utils/datum.h +1 -1
  349. data/ext/pg_query/include/utils/dsa.h +5 -1
  350. data/ext/pg_query/include/utils/elog.h +101 -26
  351. data/ext/pg_query/include/utils/expandeddatum.h +14 -3
  352. data/ext/pg_query/include/utils/expandedrecord.h +14 -4
  353. data/ext/pg_query/include/utils/float.h +7 -6
  354. data/ext/pg_query/include/utils/fmgroids.h +54 -1
  355. data/ext/pg_query/include/utils/fmgrprotos.h +45 -3
  356. data/ext/pg_query/include/utils/fmgrtab.h +1 -1
  357. data/ext/pg_query/include/utils/guc.h +55 -82
  358. data/ext/pg_query/include/utils/guc_hooks.h +163 -0
  359. data/ext/pg_query/include/utils/guc_tables.h +49 -3
  360. data/ext/pg_query/include/utils/hsearch.h +1 -1
  361. data/ext/pg_query/include/utils/inval.h +3 -3
  362. data/ext/pg_query/include/utils/logtape.h +77 -0
  363. data/ext/pg_query/include/utils/lsyscache.h +5 -1
  364. data/ext/pg_query/include/utils/memdebug.h +1 -1
  365. data/ext/pg_query/include/utils/memutils.h +5 -49
  366. data/ext/pg_query/include/utils/memutils_internal.h +136 -0
  367. data/ext/pg_query/include/utils/memutils_memorychunk.h +237 -0
  368. data/ext/pg_query/include/utils/numeric.h +20 -5
  369. data/ext/pg_query/include/utils/palloc.h +8 -1
  370. data/ext/pg_query/include/utils/partcache.h +3 -2
  371. data/ext/pg_query/include/utils/pg_locale.h +22 -14
  372. data/ext/pg_query/include/utils/pgstat_internal.h +37 -7
  373. data/ext/pg_query/include/utils/pidfile.h +1 -1
  374. data/ext/pg_query/include/utils/plancache.h +1 -1
  375. data/ext/pg_query/include/utils/portal.h +1 -1
  376. data/ext/pg_query/include/utils/probes.h +6 -6
  377. data/ext/pg_query/include/utils/ps_status.h +23 -1
  378. data/ext/pg_query/include/utils/queryenvironment.h +1 -1
  379. data/ext/pg_query/include/utils/regproc.h +3 -3
  380. data/ext/pg_query/include/utils/rel.h +60 -43
  381. data/ext/pg_query/include/utils/relcache.h +13 -8
  382. data/ext/pg_query/include/utils/reltrigger.h +1 -1
  383. data/ext/pg_query/include/utils/resowner.h +1 -1
  384. data/ext/pg_query/include/utils/ruleutils.h +6 -1
  385. data/ext/pg_query/include/utils/sharedtuplestore.h +1 -1
  386. data/ext/pg_query/include/utils/snapmgr.h +4 -2
  387. data/ext/pg_query/include/utils/snapshot.h +1 -1
  388. data/ext/pg_query/include/utils/sortsupport.h +2 -2
  389. data/ext/pg_query/include/utils/syscache.h +4 -1
  390. data/ext/pg_query/include/utils/timeout.h +1 -1
  391. data/ext/pg_query/include/utils/timestamp.h +41 -11
  392. data/ext/pg_query/include/utils/tuplesort.h +189 -35
  393. data/ext/pg_query/include/utils/tuplestore.h +1 -1
  394. data/ext/pg_query/include/utils/typcache.h +1 -1
  395. data/ext/pg_query/include/utils/varlena.h +13 -1
  396. data/ext/pg_query/include/utils/wait_event.h +9 -4
  397. data/ext/pg_query/include/utils/xml.h +15 -5
  398. data/ext/pg_query/include/varatt.h +358 -0
  399. data/ext/pg_query/pg_query.c +1 -1
  400. data/ext/pg_query/pg_query.pb-c.c +19755 -17757
  401. data/ext/pg_query/pg_query_fingerprint.c +8 -3
  402. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  403. data/ext/pg_query/pg_query_internal.h +1 -1
  404. data/ext/pg_query/pg_query_json_plpgsql.c +1 -0
  405. data/ext/pg_query/pg_query_normalize.c +1 -1
  406. data/ext/pg_query/pg_query_outfuncs_protobuf.c +2 -2
  407. data/ext/pg_query/pg_query_parse.c +46 -4
  408. data/ext/pg_query/pg_query_parse_plpgsql.c +1 -1
  409. data/ext/pg_query/pg_query_scan.c +1 -1
  410. data/ext/pg_query/pg_query_split.c +2 -2
  411. data/ext/pg_query/postgres_deparse.c +511 -109
  412. data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
  413. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
  414. data/ext/pg_query/src_backend_commands_define.c +1 -1
  415. data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
  416. data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
  417. data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
  418. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  419. data/ext/pg_query/src_backend_nodes_list.c +14 -2
  420. data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
  421. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
  422. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  423. data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
  424. data/ext/pg_query/src_backend_parser_parser.c +28 -2
  425. data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
  426. data/ext/pg_query/src_backend_parser_scansup.c +1 -1
  427. data/ext/pg_query/src_backend_postmaster_postmaster.c +129 -110
  428. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  429. data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
  430. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
  431. data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
  432. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  433. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  434. data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
  435. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
  436. data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
  437. data/ext/pg_query/src_backend_utils_error_elog.c +354 -97
  438. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
  439. data/ext/pg_query/src_backend_utils_init_globals.c +5 -2
  440. data/ext/pg_query/src_backend_utils_mb_mbutils.c +13 -4
  441. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +494 -0
  442. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
  443. data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
  444. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
  445. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
  446. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
  447. data/ext/pg_query/src_common_encnames.c +4 -1
  448. data/ext/pg_query/src_common_hashfn.c +1 -1
  449. data/ext/pg_query/src_common_keywords.c +1 -1
  450. data/ext/pg_query/src_common_kwlist_d.h +534 -510
  451. data/ext/pg_query/src_common_kwlookup.c +1 -1
  452. data/ext/pg_query/src_common_psprintf.c +1 -1
  453. data/ext/pg_query/src_common_stringinfo.c +4 -4
  454. data/ext/pg_query/src_common_wchar.c +9 -8
  455. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
  456. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
  457. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
  458. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  459. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  460. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
  461. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
  462. data/ext/pg_query/src_port_pg_bitutils.c +1 -1
  463. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  464. data/ext/pg_query/src_port_snprintf.c +3 -7
  465. data/ext/pg_query/src_port_strerror.c +1 -1
  466. data/ext/pg_query/src_port_strnlen.c +1 -1
  467. data/lib/pg_query/pg_query_pb.rb +166 -3191
  468. data/lib/pg_query/treewalker.rb +7 -2
  469. data/lib/pg_query/version.rb +1 -1
  470. metadata +43 -24
  471. data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
  472. data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
  473. data/ext/pg_query/include/commands/variable.h +0 -38
  474. data/ext/pg_query/include/getaddrinfo.h +0 -162
  475. data/ext/pg_query/include/parser/gram.h +0 -1101
  476. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  477. data/ext/pg_query/include/utils/dynahash.h +0 -20
  478. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  479. data/ext/pg_query/include/utils/rls.h +0 -50
  480. data/ext/pg_query/include/utils/tzparser.h +0 -39
  481. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
  482. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
  483. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
  484. data/ext/pg_query/src_common_pg_prng.c +0 -152
  485. data/ext/pg_query/src_common_string.c +0 -92
  486. data/ext/pg_query/src_port_pgsleep.c +0 -69
@@ -1,1101 +0,0 @@
1
- /* A Bison parser, made by GNU Bison 2.3. */
2
-
3
- /* Skeleton interface for Bison's Yacc-like parsers in C
4
-
5
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6
- Free Software Foundation, Inc.
7
-
8
- This program is free software; you can redistribute it and/or modify
9
- it under the terms of the GNU General Public License as published by
10
- the Free Software Foundation; either version 2, or (at your option)
11
- any later version.
12
-
13
- This program is distributed in the hope that it will be useful,
14
- but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- GNU General Public License for more details.
17
-
18
- You should have received a copy of the GNU General Public License
19
- along with this program; if not, write to the Free Software
20
- Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
- Boston, MA 02110-1301, USA. */
22
-
23
- /* As a special exception, you may create a larger work that contains
24
- part or all of the Bison parser skeleton and distribute that work
25
- under terms of your choice, so long as that work isn't itself a
26
- parser generator using the skeleton or a modified version thereof
27
- as a parser skeleton. Alternatively, if you modify or redistribute
28
- the parser skeleton itself, you may (at your option) remove this
29
- special exception, which will cause the skeleton and the resulting
30
- Bison output files to be licensed under the GNU General Public
31
- License without this special exception.
32
-
33
- This special exception was added by the Free Software Foundation in
34
- version 2.2 of Bison. */
35
-
36
- /* Tokens. */
37
- #ifndef YYTOKENTYPE
38
- # define YYTOKENTYPE
39
- /* Put the tokens into the symbol table, so that GDB and other debuggers
40
- know about them. */
41
- enum yytokentype {
42
- IDENT = 258,
43
- UIDENT = 259,
44
- FCONST = 260,
45
- SCONST = 261,
46
- USCONST = 262,
47
- BCONST = 263,
48
- XCONST = 264,
49
- Op = 265,
50
- ICONST = 266,
51
- PARAM = 267,
52
- TYPECAST = 268,
53
- DOT_DOT = 269,
54
- COLON_EQUALS = 270,
55
- EQUALS_GREATER = 271,
56
- LESS_EQUALS = 272,
57
- GREATER_EQUALS = 273,
58
- NOT_EQUALS = 274,
59
- SQL_COMMENT = 275,
60
- C_COMMENT = 276,
61
- ABORT_P = 277,
62
- ABSOLUTE_P = 278,
63
- ACCESS = 279,
64
- ACTION = 280,
65
- ADD_P = 281,
66
- ADMIN = 282,
67
- AFTER = 283,
68
- AGGREGATE = 284,
69
- ALL = 285,
70
- ALSO = 286,
71
- ALTER = 287,
72
- ALWAYS = 288,
73
- ANALYSE = 289,
74
- ANALYZE = 290,
75
- AND = 291,
76
- ANY = 292,
77
- ARRAY = 293,
78
- AS = 294,
79
- ASC = 295,
80
- ASENSITIVE = 296,
81
- ASSERTION = 297,
82
- ASSIGNMENT = 298,
83
- ASYMMETRIC = 299,
84
- ATOMIC = 300,
85
- AT = 301,
86
- ATTACH = 302,
87
- ATTRIBUTE = 303,
88
- AUTHORIZATION = 304,
89
- BACKWARD = 305,
90
- BEFORE = 306,
91
- BEGIN_P = 307,
92
- BETWEEN = 308,
93
- BIGINT = 309,
94
- BINARY = 310,
95
- BIT = 311,
96
- BOOLEAN_P = 312,
97
- BOTH = 313,
98
- BREADTH = 314,
99
- BY = 315,
100
- CACHE = 316,
101
- CALL = 317,
102
- CALLED = 318,
103
- CASCADE = 319,
104
- CASCADED = 320,
105
- CASE = 321,
106
- CAST = 322,
107
- CATALOG_P = 323,
108
- CHAIN = 324,
109
- CHAR_P = 325,
110
- CHARACTER = 326,
111
- CHARACTERISTICS = 327,
112
- CHECK = 328,
113
- CHECKPOINT = 329,
114
- CLASS = 330,
115
- CLOSE = 331,
116
- CLUSTER = 332,
117
- COALESCE = 333,
118
- COLLATE = 334,
119
- COLLATION = 335,
120
- COLUMN = 336,
121
- COLUMNS = 337,
122
- COMMENT = 338,
123
- COMMENTS = 339,
124
- COMMIT = 340,
125
- COMMITTED = 341,
126
- COMPRESSION = 342,
127
- CONCURRENTLY = 343,
128
- CONFIGURATION = 344,
129
- CONFLICT = 345,
130
- CONNECTION = 346,
131
- CONSTRAINT = 347,
132
- CONSTRAINTS = 348,
133
- CONTENT_P = 349,
134
- CONTINUE_P = 350,
135
- CONVERSION_P = 351,
136
- COPY = 352,
137
- COST = 353,
138
- CREATE = 354,
139
- CROSS = 355,
140
- CSV = 356,
141
- CUBE = 357,
142
- CURRENT_P = 358,
143
- CURRENT_CATALOG = 359,
144
- CURRENT_DATE = 360,
145
- CURRENT_ROLE = 361,
146
- CURRENT_SCHEMA = 362,
147
- CURRENT_TIME = 363,
148
- CURRENT_TIMESTAMP = 364,
149
- CURRENT_USER = 365,
150
- CURSOR = 366,
151
- CYCLE = 367,
152
- DATA_P = 368,
153
- DATABASE = 369,
154
- DAY_P = 370,
155
- DEALLOCATE = 371,
156
- DEC = 372,
157
- DECIMAL_P = 373,
158
- DECLARE = 374,
159
- DEFAULT = 375,
160
- DEFAULTS = 376,
161
- DEFERRABLE = 377,
162
- DEFERRED = 378,
163
- DEFINER = 379,
164
- DELETE_P = 380,
165
- DELIMITER = 381,
166
- DELIMITERS = 382,
167
- DEPENDS = 383,
168
- DEPTH = 384,
169
- DESC = 385,
170
- DETACH = 386,
171
- DICTIONARY = 387,
172
- DISABLE_P = 388,
173
- DISCARD = 389,
174
- DISTINCT = 390,
175
- DO = 391,
176
- DOCUMENT_P = 392,
177
- DOMAIN_P = 393,
178
- DOUBLE_P = 394,
179
- DROP = 395,
180
- EACH = 396,
181
- ELSE = 397,
182
- ENABLE_P = 398,
183
- ENCODING = 399,
184
- ENCRYPTED = 400,
185
- END_P = 401,
186
- ENUM_P = 402,
187
- ESCAPE = 403,
188
- EVENT = 404,
189
- EXCEPT = 405,
190
- EXCLUDE = 406,
191
- EXCLUDING = 407,
192
- EXCLUSIVE = 408,
193
- EXECUTE = 409,
194
- EXISTS = 410,
195
- EXPLAIN = 411,
196
- EXPRESSION = 412,
197
- EXTENSION = 413,
198
- EXTERNAL = 414,
199
- EXTRACT = 415,
200
- FALSE_P = 416,
201
- FAMILY = 417,
202
- FETCH = 418,
203
- FILTER = 419,
204
- FINALIZE = 420,
205
- FIRST_P = 421,
206
- FLOAT_P = 422,
207
- FOLLOWING = 423,
208
- FOR = 424,
209
- FORCE = 425,
210
- FOREIGN = 426,
211
- FORWARD = 427,
212
- FREEZE = 428,
213
- FROM = 429,
214
- FULL = 430,
215
- FUNCTION = 431,
216
- FUNCTIONS = 432,
217
- GENERATED = 433,
218
- GLOBAL = 434,
219
- GRANT = 435,
220
- GRANTED = 436,
221
- GREATEST = 437,
222
- GROUP_P = 438,
223
- GROUPING = 439,
224
- GROUPS = 440,
225
- HANDLER = 441,
226
- HAVING = 442,
227
- HEADER_P = 443,
228
- HOLD = 444,
229
- HOUR_P = 445,
230
- IDENTITY_P = 446,
231
- IF_P = 447,
232
- ILIKE = 448,
233
- IMMEDIATE = 449,
234
- IMMUTABLE = 450,
235
- IMPLICIT_P = 451,
236
- IMPORT_P = 452,
237
- IN_P = 453,
238
- INCLUDE = 454,
239
- INCLUDING = 455,
240
- INCREMENT = 456,
241
- INDEX = 457,
242
- INDEXES = 458,
243
- INHERIT = 459,
244
- INHERITS = 460,
245
- INITIALLY = 461,
246
- INLINE_P = 462,
247
- INNER_P = 463,
248
- INOUT = 464,
249
- INPUT_P = 465,
250
- INSENSITIVE = 466,
251
- INSERT = 467,
252
- INSTEAD = 468,
253
- INT_P = 469,
254
- INTEGER = 470,
255
- INTERSECT = 471,
256
- INTERVAL = 472,
257
- INTO = 473,
258
- INVOKER = 474,
259
- IS = 475,
260
- ISNULL = 476,
261
- ISOLATION = 477,
262
- JOIN = 478,
263
- KEY = 479,
264
- LABEL = 480,
265
- LANGUAGE = 481,
266
- LARGE_P = 482,
267
- LAST_P = 483,
268
- LATERAL_P = 484,
269
- LEADING = 485,
270
- LEAKPROOF = 486,
271
- LEAST = 487,
272
- LEFT = 488,
273
- LEVEL = 489,
274
- LIKE = 490,
275
- LIMIT = 491,
276
- LISTEN = 492,
277
- LOAD = 493,
278
- LOCAL = 494,
279
- LOCALTIME = 495,
280
- LOCALTIMESTAMP = 496,
281
- LOCATION = 497,
282
- LOCK_P = 498,
283
- LOCKED = 499,
284
- LOGGED = 500,
285
- MAPPING = 501,
286
- MATCH = 502,
287
- MATCHED = 503,
288
- MATERIALIZED = 504,
289
- MAXVALUE = 505,
290
- MERGE = 506,
291
- METHOD = 507,
292
- MINUTE_P = 508,
293
- MINVALUE = 509,
294
- MODE = 510,
295
- MONTH_P = 511,
296
- MOVE = 512,
297
- NAME_P = 513,
298
- NAMES = 514,
299
- NATIONAL = 515,
300
- NATURAL = 516,
301
- NCHAR = 517,
302
- NEW = 518,
303
- NEXT = 519,
304
- NFC = 520,
305
- NFD = 521,
306
- NFKC = 522,
307
- NFKD = 523,
308
- NO = 524,
309
- NONE = 525,
310
- NORMALIZE = 526,
311
- NORMALIZED = 527,
312
- NOT = 528,
313
- NOTHING = 529,
314
- NOTIFY = 530,
315
- NOTNULL = 531,
316
- NOWAIT = 532,
317
- NULL_P = 533,
318
- NULLIF = 534,
319
- NULLS_P = 535,
320
- NUMERIC = 536,
321
- OBJECT_P = 537,
322
- OF = 538,
323
- OFF = 539,
324
- OFFSET = 540,
325
- OIDS = 541,
326
- OLD = 542,
327
- ON = 543,
328
- ONLY = 544,
329
- OPERATOR = 545,
330
- OPTION = 546,
331
- OPTIONS = 547,
332
- OR = 548,
333
- ORDER = 549,
334
- ORDINALITY = 550,
335
- OTHERS = 551,
336
- OUT_P = 552,
337
- OUTER_P = 553,
338
- OVER = 554,
339
- OVERLAPS = 555,
340
- OVERLAY = 556,
341
- OVERRIDING = 557,
342
- OWNED = 558,
343
- OWNER = 559,
344
- PARALLEL = 560,
345
- PARAMETER = 561,
346
- PARSER = 562,
347
- PARTIAL = 563,
348
- PARTITION = 564,
349
- PASSING = 565,
350
- PASSWORD = 566,
351
- PLACING = 567,
352
- PLANS = 568,
353
- POLICY = 569,
354
- POSITION = 570,
355
- PRECEDING = 571,
356
- PRECISION = 572,
357
- PRESERVE = 573,
358
- PREPARE = 574,
359
- PREPARED = 575,
360
- PRIMARY = 576,
361
- PRIOR = 577,
362
- PRIVILEGES = 578,
363
- PROCEDURAL = 579,
364
- PROCEDURE = 580,
365
- PROCEDURES = 581,
366
- PROGRAM = 582,
367
- PUBLICATION = 583,
368
- QUOTE = 584,
369
- RANGE = 585,
370
- READ = 586,
371
- REAL = 587,
372
- REASSIGN = 588,
373
- RECHECK = 589,
374
- RECURSIVE = 590,
375
- REF_P = 591,
376
- REFERENCES = 592,
377
- REFERENCING = 593,
378
- REFRESH = 594,
379
- REINDEX = 595,
380
- RELATIVE_P = 596,
381
- RELEASE = 597,
382
- RENAME = 598,
383
- REPEATABLE = 599,
384
- REPLACE = 600,
385
- REPLICA = 601,
386
- RESET = 602,
387
- RESTART = 603,
388
- RESTRICT = 604,
389
- RETURN = 605,
390
- RETURNING = 606,
391
- RETURNS = 607,
392
- REVOKE = 608,
393
- RIGHT = 609,
394
- ROLE = 610,
395
- ROLLBACK = 611,
396
- ROLLUP = 612,
397
- ROUTINE = 613,
398
- ROUTINES = 614,
399
- ROW = 615,
400
- ROWS = 616,
401
- RULE = 617,
402
- SAVEPOINT = 618,
403
- SCHEMA = 619,
404
- SCHEMAS = 620,
405
- SCROLL = 621,
406
- SEARCH = 622,
407
- SECOND_P = 623,
408
- SECURITY = 624,
409
- SELECT = 625,
410
- SEQUENCE = 626,
411
- SEQUENCES = 627,
412
- SERIALIZABLE = 628,
413
- SERVER = 629,
414
- SESSION = 630,
415
- SESSION_USER = 631,
416
- SET = 632,
417
- SETS = 633,
418
- SETOF = 634,
419
- SHARE = 635,
420
- SHOW = 636,
421
- SIMILAR = 637,
422
- SIMPLE = 638,
423
- SKIP = 639,
424
- SMALLINT = 640,
425
- SNAPSHOT = 641,
426
- SOME = 642,
427
- SQL_P = 643,
428
- STABLE = 644,
429
- STANDALONE_P = 645,
430
- START = 646,
431
- STATEMENT = 647,
432
- STATISTICS = 648,
433
- STDIN = 649,
434
- STDOUT = 650,
435
- STORAGE = 651,
436
- STORED = 652,
437
- STRICT_P = 653,
438
- STRIP_P = 654,
439
- SUBSCRIPTION = 655,
440
- SUBSTRING = 656,
441
- SUPPORT = 657,
442
- SYMMETRIC = 658,
443
- SYSID = 659,
444
- SYSTEM_P = 660,
445
- TABLE = 661,
446
- TABLES = 662,
447
- TABLESAMPLE = 663,
448
- TABLESPACE = 664,
449
- TEMP = 665,
450
- TEMPLATE = 666,
451
- TEMPORARY = 667,
452
- TEXT_P = 668,
453
- THEN = 669,
454
- TIES = 670,
455
- TIME = 671,
456
- TIMESTAMP = 672,
457
- TO = 673,
458
- TRAILING = 674,
459
- TRANSACTION = 675,
460
- TRANSFORM = 676,
461
- TREAT = 677,
462
- TRIGGER = 678,
463
- TRIM = 679,
464
- TRUE_P = 680,
465
- TRUNCATE = 681,
466
- TRUSTED = 682,
467
- TYPE_P = 683,
468
- TYPES_P = 684,
469
- UESCAPE = 685,
470
- UNBOUNDED = 686,
471
- UNCOMMITTED = 687,
472
- UNENCRYPTED = 688,
473
- UNION = 689,
474
- UNIQUE = 690,
475
- UNKNOWN = 691,
476
- UNLISTEN = 692,
477
- UNLOGGED = 693,
478
- UNTIL = 694,
479
- UPDATE = 695,
480
- USER = 696,
481
- USING = 697,
482
- VACUUM = 698,
483
- VALID = 699,
484
- VALIDATE = 700,
485
- VALIDATOR = 701,
486
- VALUE_P = 702,
487
- VALUES = 703,
488
- VARCHAR = 704,
489
- VARIADIC = 705,
490
- VARYING = 706,
491
- VERBOSE = 707,
492
- VERSION_P = 708,
493
- VIEW = 709,
494
- VIEWS = 710,
495
- VOLATILE = 711,
496
- WHEN = 712,
497
- WHERE = 713,
498
- WHITESPACE_P = 714,
499
- WINDOW = 715,
500
- WITH = 716,
501
- WITHIN = 717,
502
- WITHOUT = 718,
503
- WORK = 719,
504
- WRAPPER = 720,
505
- WRITE = 721,
506
- XML_P = 722,
507
- XMLATTRIBUTES = 723,
508
- XMLCONCAT = 724,
509
- XMLELEMENT = 725,
510
- XMLEXISTS = 726,
511
- XMLFOREST = 727,
512
- XMLNAMESPACES = 728,
513
- XMLPARSE = 729,
514
- XMLPI = 730,
515
- XMLROOT = 731,
516
- XMLSERIALIZE = 732,
517
- XMLTABLE = 733,
518
- YEAR_P = 734,
519
- YES_P = 735,
520
- ZONE = 736,
521
- NOT_LA = 737,
522
- NULLS_LA = 738,
523
- WITH_LA = 739,
524
- MODE_TYPE_NAME = 740,
525
- MODE_PLPGSQL_EXPR = 741,
526
- MODE_PLPGSQL_ASSIGN1 = 742,
527
- MODE_PLPGSQL_ASSIGN2 = 743,
528
- MODE_PLPGSQL_ASSIGN3 = 744,
529
- UMINUS = 745
530
- };
531
- #endif
532
- /* Tokens. */
533
- #define IDENT 258
534
- #define UIDENT 259
535
- #define FCONST 260
536
- #define SCONST 261
537
- #define USCONST 262
538
- #define BCONST 263
539
- #define XCONST 264
540
- #define Op 265
541
- #define ICONST 266
542
- #define PARAM 267
543
- #define TYPECAST 268
544
- #define DOT_DOT 269
545
- #define COLON_EQUALS 270
546
- #define EQUALS_GREATER 271
547
- #define LESS_EQUALS 272
548
- #define GREATER_EQUALS 273
549
- #define NOT_EQUALS 274
550
- #define SQL_COMMENT 275
551
- #define C_COMMENT 276
552
- #define ABORT_P 277
553
- #define ABSOLUTE_P 278
554
- #define ACCESS 279
555
- #define ACTION 280
556
- #define ADD_P 281
557
- #define ADMIN 282
558
- #define AFTER 283
559
- #define AGGREGATE 284
560
- #define ALL 285
561
- #define ALSO 286
562
- #define ALTER 287
563
- #define ALWAYS 288
564
- #define ANALYSE 289
565
- #define ANALYZE 290
566
- #define AND 291
567
- #define ANY 292
568
- #define ARRAY 293
569
- #define AS 294
570
- #define ASC 295
571
- #define ASENSITIVE 296
572
- #define ASSERTION 297
573
- #define ASSIGNMENT 298
574
- #define ASYMMETRIC 299
575
- #define ATOMIC 300
576
- #define AT 301
577
- #define ATTACH 302
578
- #define ATTRIBUTE 303
579
- #define AUTHORIZATION 304
580
- #define BACKWARD 305
581
- #define BEFORE 306
582
- #define BEGIN_P 307
583
- #define BETWEEN 308
584
- #define BIGINT 309
585
- #define BINARY 310
586
- #define BIT 311
587
- #define BOOLEAN_P 312
588
- #define BOTH 313
589
- #define BREADTH 314
590
- #define BY 315
591
- #define CACHE 316
592
- #define CALL 317
593
- #define CALLED 318
594
- #define CASCADE 319
595
- #define CASCADED 320
596
- #define CASE 321
597
- #define CAST 322
598
- #define CATALOG_P 323
599
- #define CHAIN 324
600
- #define CHAR_P 325
601
- #define CHARACTER 326
602
- #define CHARACTERISTICS 327
603
- #define CHECK 328
604
- #define CHECKPOINT 329
605
- #define CLASS 330
606
- #define CLOSE 331
607
- #define CLUSTER 332
608
- #define COALESCE 333
609
- #define COLLATE 334
610
- #define COLLATION 335
611
- #define COLUMN 336
612
- #define COLUMNS 337
613
- #define COMMENT 338
614
- #define COMMENTS 339
615
- #define COMMIT 340
616
- #define COMMITTED 341
617
- #define COMPRESSION 342
618
- #define CONCURRENTLY 343
619
- #define CONFIGURATION 344
620
- #define CONFLICT 345
621
- #define CONNECTION 346
622
- #define CONSTRAINT 347
623
- #define CONSTRAINTS 348
624
- #define CONTENT_P 349
625
- #define CONTINUE_P 350
626
- #define CONVERSION_P 351
627
- #define COPY 352
628
- #define COST 353
629
- #define CREATE 354
630
- #define CROSS 355
631
- #define CSV 356
632
- #define CUBE 357
633
- #define CURRENT_P 358
634
- #define CURRENT_CATALOG 359
635
- #define CURRENT_DATE 360
636
- #define CURRENT_ROLE 361
637
- #define CURRENT_SCHEMA 362
638
- #define CURRENT_TIME 363
639
- #define CURRENT_TIMESTAMP 364
640
- #define CURRENT_USER 365
641
- #define CURSOR 366
642
- #define CYCLE 367
643
- #define DATA_P 368
644
- #define DATABASE 369
645
- #define DAY_P 370
646
- #define DEALLOCATE 371
647
- #define DEC 372
648
- #define DECIMAL_P 373
649
- #define DECLARE 374
650
- #define DEFAULT 375
651
- #define DEFAULTS 376
652
- #define DEFERRABLE 377
653
- #define DEFERRED 378
654
- #define DEFINER 379
655
- #define DELETE_P 380
656
- #define DELIMITER 381
657
- #define DELIMITERS 382
658
- #define DEPENDS 383
659
- #define DEPTH 384
660
- #define DESC 385
661
- #define DETACH 386
662
- #define DICTIONARY 387
663
- #define DISABLE_P 388
664
- #define DISCARD 389
665
- #define DISTINCT 390
666
- #define DO 391
667
- #define DOCUMENT_P 392
668
- #define DOMAIN_P 393
669
- #define DOUBLE_P 394
670
- #define DROP 395
671
- #define EACH 396
672
- #define ELSE 397
673
- #define ENABLE_P 398
674
- #define ENCODING 399
675
- #define ENCRYPTED 400
676
- #define END_P 401
677
- #define ENUM_P 402
678
- #define ESCAPE 403
679
- #define EVENT 404
680
- #define EXCEPT 405
681
- #define EXCLUDE 406
682
- #define EXCLUDING 407
683
- #define EXCLUSIVE 408
684
- #define EXECUTE 409
685
- #define EXISTS 410
686
- #define EXPLAIN 411
687
- #define EXPRESSION 412
688
- #define EXTENSION 413
689
- #define EXTERNAL 414
690
- #define EXTRACT 415
691
- #define FALSE_P 416
692
- #define FAMILY 417
693
- #define FETCH 418
694
- #define FILTER 419
695
- #define FINALIZE 420
696
- #define FIRST_P 421
697
- #define FLOAT_P 422
698
- #define FOLLOWING 423
699
- #define FOR 424
700
- #define FORCE 425
701
- #define FOREIGN 426
702
- #define FORWARD 427
703
- #define FREEZE 428
704
- #define FROM 429
705
- #define FULL 430
706
- #define FUNCTION 431
707
- #define FUNCTIONS 432
708
- #define GENERATED 433
709
- #define GLOBAL 434
710
- #define GRANT 435
711
- #define GRANTED 436
712
- #define GREATEST 437
713
- #define GROUP_P 438
714
- #define GROUPING 439
715
- #define GROUPS 440
716
- #define HANDLER 441
717
- #define HAVING 442
718
- #define HEADER_P 443
719
- #define HOLD 444
720
- #define HOUR_P 445
721
- #define IDENTITY_P 446
722
- #define IF_P 447
723
- #define ILIKE 448
724
- #define IMMEDIATE 449
725
- #define IMMUTABLE 450
726
- #define IMPLICIT_P 451
727
- #define IMPORT_P 452
728
- #define IN_P 453
729
- #define INCLUDE 454
730
- #define INCLUDING 455
731
- #define INCREMENT 456
732
- #define INDEX 457
733
- #define INDEXES 458
734
- #define INHERIT 459
735
- #define INHERITS 460
736
- #define INITIALLY 461
737
- #define INLINE_P 462
738
- #define INNER_P 463
739
- #define INOUT 464
740
- #define INPUT_P 465
741
- #define INSENSITIVE 466
742
- #define INSERT 467
743
- #define INSTEAD 468
744
- #define INT_P 469
745
- #define INTEGER 470
746
- #define INTERSECT 471
747
- #define INTERVAL 472
748
- #define INTO 473
749
- #define INVOKER 474
750
- #define IS 475
751
- #define ISNULL 476
752
- #define ISOLATION 477
753
- #define JOIN 478
754
- #define KEY 479
755
- #define LABEL 480
756
- #define LANGUAGE 481
757
- #define LARGE_P 482
758
- #define LAST_P 483
759
- #define LATERAL_P 484
760
- #define LEADING 485
761
- #define LEAKPROOF 486
762
- #define LEAST 487
763
- #define LEFT 488
764
- #define LEVEL 489
765
- #define LIKE 490
766
- #define LIMIT 491
767
- #define LISTEN 492
768
- #define LOAD 493
769
- #define LOCAL 494
770
- #define LOCALTIME 495
771
- #define LOCALTIMESTAMP 496
772
- #define LOCATION 497
773
- #define LOCK_P 498
774
- #define LOCKED 499
775
- #define LOGGED 500
776
- #define MAPPING 501
777
- #define MATCH 502
778
- #define MATCHED 503
779
- #define MATERIALIZED 504
780
- #define MAXVALUE 505
781
- #define MERGE 506
782
- #define METHOD 507
783
- #define MINUTE_P 508
784
- #define MINVALUE 509
785
- #define MODE 510
786
- #define MONTH_P 511
787
- #define MOVE 512
788
- #define NAME_P 513
789
- #define NAMES 514
790
- #define NATIONAL 515
791
- #define NATURAL 516
792
- #define NCHAR 517
793
- #define NEW 518
794
- #define NEXT 519
795
- #define NFC 520
796
- #define NFD 521
797
- #define NFKC 522
798
- #define NFKD 523
799
- #define NO 524
800
- #define NONE 525
801
- #define NORMALIZE 526
802
- #define NORMALIZED 527
803
- #define NOT 528
804
- #define NOTHING 529
805
- #define NOTIFY 530
806
- #define NOTNULL 531
807
- #define NOWAIT 532
808
- #define NULL_P 533
809
- #define NULLIF 534
810
- #define NULLS_P 535
811
- #define NUMERIC 536
812
- #define OBJECT_P 537
813
- #define OF 538
814
- #define OFF 539
815
- #define OFFSET 540
816
- #define OIDS 541
817
- #define OLD 542
818
- #define ON 543
819
- #define ONLY 544
820
- #define OPERATOR 545
821
- #define OPTION 546
822
- #define OPTIONS 547
823
- #define OR 548
824
- #define ORDER 549
825
- #define ORDINALITY 550
826
- #define OTHERS 551
827
- #define OUT_P 552
828
- #define OUTER_P 553
829
- #define OVER 554
830
- #define OVERLAPS 555
831
- #define OVERLAY 556
832
- #define OVERRIDING 557
833
- #define OWNED 558
834
- #define OWNER 559
835
- #define PARALLEL 560
836
- #define PARAMETER 561
837
- #define PARSER 562
838
- #define PARTIAL 563
839
- #define PARTITION 564
840
- #define PASSING 565
841
- #define PASSWORD 566
842
- #define PLACING 567
843
- #define PLANS 568
844
- #define POLICY 569
845
- #define POSITION 570
846
- #define PRECEDING 571
847
- #define PRECISION 572
848
- #define PRESERVE 573
849
- #define PREPARE 574
850
- #define PREPARED 575
851
- #define PRIMARY 576
852
- #define PRIOR 577
853
- #define PRIVILEGES 578
854
- #define PROCEDURAL 579
855
- #define PROCEDURE 580
856
- #define PROCEDURES 581
857
- #define PROGRAM 582
858
- #define PUBLICATION 583
859
- #define QUOTE 584
860
- #define RANGE 585
861
- #define READ 586
862
- #define REAL 587
863
- #define REASSIGN 588
864
- #define RECHECK 589
865
- #define RECURSIVE 590
866
- #define REF_P 591
867
- #define REFERENCES 592
868
- #define REFERENCING 593
869
- #define REFRESH 594
870
- #define REINDEX 595
871
- #define RELATIVE_P 596
872
- #define RELEASE 597
873
- #define RENAME 598
874
- #define REPEATABLE 599
875
- #define REPLACE 600
876
- #define REPLICA 601
877
- #define RESET 602
878
- #define RESTART 603
879
- #define RESTRICT 604
880
- #define RETURN 605
881
- #define RETURNING 606
882
- #define RETURNS 607
883
- #define REVOKE 608
884
- #define RIGHT 609
885
- #define ROLE 610
886
- #define ROLLBACK 611
887
- #define ROLLUP 612
888
- #define ROUTINE 613
889
- #define ROUTINES 614
890
- #define ROW 615
891
- #define ROWS 616
892
- #define RULE 617
893
- #define SAVEPOINT 618
894
- #define SCHEMA 619
895
- #define SCHEMAS 620
896
- #define SCROLL 621
897
- #define SEARCH 622
898
- #define SECOND_P 623
899
- #define SECURITY 624
900
- #define SELECT 625
901
- #define SEQUENCE 626
902
- #define SEQUENCES 627
903
- #define SERIALIZABLE 628
904
- #define SERVER 629
905
- #define SESSION 630
906
- #define SESSION_USER 631
907
- #define SET 632
908
- #define SETS 633
909
- #define SETOF 634
910
- #define SHARE 635
911
- #define SHOW 636
912
- #define SIMILAR 637
913
- #define SIMPLE 638
914
- #define SKIP 639
915
- #define SMALLINT 640
916
- #define SNAPSHOT 641
917
- #define SOME 642
918
- #define SQL_P 643
919
- #define STABLE 644
920
- #define STANDALONE_P 645
921
- #define START 646
922
- #define STATEMENT 647
923
- #define STATISTICS 648
924
- #define STDIN 649
925
- #define STDOUT 650
926
- #define STORAGE 651
927
- #define STORED 652
928
- #define STRICT_P 653
929
- #define STRIP_P 654
930
- #define SUBSCRIPTION 655
931
- #define SUBSTRING 656
932
- #define SUPPORT 657
933
- #define SYMMETRIC 658
934
- #define SYSID 659
935
- #define SYSTEM_P 660
936
- #define TABLE 661
937
- #define TABLES 662
938
- #define TABLESAMPLE 663
939
- #define TABLESPACE 664
940
- #define TEMP 665
941
- #define TEMPLATE 666
942
- #define TEMPORARY 667
943
- #define TEXT_P 668
944
- #define THEN 669
945
- #define TIES 670
946
- #define TIME 671
947
- #define TIMESTAMP 672
948
- #define TO 673
949
- #define TRAILING 674
950
- #define TRANSACTION 675
951
- #define TRANSFORM 676
952
- #define TREAT 677
953
- #define TRIGGER 678
954
- #define TRIM 679
955
- #define TRUE_P 680
956
- #define TRUNCATE 681
957
- #define TRUSTED 682
958
- #define TYPE_P 683
959
- #define TYPES_P 684
960
- #define UESCAPE 685
961
- #define UNBOUNDED 686
962
- #define UNCOMMITTED 687
963
- #define UNENCRYPTED 688
964
- #define UNION 689
965
- #define UNIQUE 690
966
- #define UNKNOWN 691
967
- #define UNLISTEN 692
968
- #define UNLOGGED 693
969
- #define UNTIL 694
970
- #define UPDATE 695
971
- #define USER 696
972
- #define USING 697
973
- #define VACUUM 698
974
- #define VALID 699
975
- #define VALIDATE 700
976
- #define VALIDATOR 701
977
- #define VALUE_P 702
978
- #define VALUES 703
979
- #define VARCHAR 704
980
- #define VARIADIC 705
981
- #define VARYING 706
982
- #define VERBOSE 707
983
- #define VERSION_P 708
984
- #define VIEW 709
985
- #define VIEWS 710
986
- #define VOLATILE 711
987
- #define WHEN 712
988
- #define WHERE 713
989
- #define WHITESPACE_P 714
990
- #define WINDOW 715
991
- #define WITH 716
992
- #define WITHIN 717
993
- #define WITHOUT 718
994
- #define WORK 719
995
- #define WRAPPER 720
996
- #define WRITE 721
997
- #define XML_P 722
998
- #define XMLATTRIBUTES 723
999
- #define XMLCONCAT 724
1000
- #define XMLELEMENT 725
1001
- #define XMLEXISTS 726
1002
- #define XMLFOREST 727
1003
- #define XMLNAMESPACES 728
1004
- #define XMLPARSE 729
1005
- #define XMLPI 730
1006
- #define XMLROOT 731
1007
- #define XMLSERIALIZE 732
1008
- #define XMLTABLE 733
1009
- #define YEAR_P 734
1010
- #define YES_P 735
1011
- #define ZONE 736
1012
- #define NOT_LA 737
1013
- #define NULLS_LA 738
1014
- #define WITH_LA 739
1015
- #define MODE_TYPE_NAME 740
1016
- #define MODE_PLPGSQL_EXPR 741
1017
- #define MODE_PLPGSQL_ASSIGN1 742
1018
- #define MODE_PLPGSQL_ASSIGN2 743
1019
- #define MODE_PLPGSQL_ASSIGN3 744
1020
- #define UMINUS 745
1021
-
1022
-
1023
-
1024
-
1025
- #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
1026
- typedef union YYSTYPE
1027
- #line 237 "gram.y"
1028
- {
1029
- core_YYSTYPE core_yystype;
1030
- /* these fields must match core_YYSTYPE: */
1031
- int ival;
1032
- char *str;
1033
- const char *keyword;
1034
-
1035
- char chr;
1036
- bool boolean;
1037
- JoinType jtype;
1038
- DropBehavior dbehavior;
1039
- OnCommitAction oncommit;
1040
- List *list;
1041
- Node *node;
1042
- ObjectType objtype;
1043
- TypeName *typnam;
1044
- FunctionParameter *fun_param;
1045
- FunctionParameterMode fun_param_mode;
1046
- ObjectWithArgs *objwithargs;
1047
- DefElem *defelt;
1048
- SortBy *sortby;
1049
- WindowDef *windef;
1050
- JoinExpr *jexpr;
1051
- IndexElem *ielem;
1052
- StatsElem *selem;
1053
- Alias *alias;
1054
- RangeVar *range;
1055
- IntoClause *into;
1056
- WithClause *with;
1057
- InferClause *infer;
1058
- OnConflictClause *onconflict;
1059
- A_Indices *aind;
1060
- ResTarget *target;
1061
- struct PrivTarget *privtarget;
1062
- AccessPriv *accesspriv;
1063
- struct ImportQual *importqual;
1064
- InsertStmt *istmt;
1065
- VariableSetStmt *vsetstmt;
1066
- PartitionElem *partelem;
1067
- PartitionSpec *partspec;
1068
- PartitionBoundSpec *partboundspec;
1069
- RoleSpec *rolespec;
1070
- PublicationObjSpec *publicationobjectspec;
1071
- struct SelectLimit *selectlimit;
1072
- SetQuantifier setquantifier;
1073
- struct GroupClause *groupclause;
1074
- MergeWhenClause *mergewhen;
1075
- struct KeyActions *keyactions;
1076
- struct KeyAction *keyaction;
1077
- }
1078
- /* Line 1529 of yacc.c. */
1079
- #line 1080 "gram.h"
1080
- YYSTYPE;
1081
- # define yystype YYSTYPE /* obsolescent; will be withdrawn */
1082
- # define YYSTYPE_IS_DECLARED 1
1083
- # define YYSTYPE_IS_TRIVIAL 1
1084
- #endif
1085
-
1086
-
1087
-
1088
- #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
1089
- typedef struct YYLTYPE
1090
- {
1091
- int first_line;
1092
- int first_column;
1093
- int last_line;
1094
- int last_column;
1095
- } YYLTYPE;
1096
- # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
1097
- # define YYLTYPE_IS_DECLARED 1
1098
- # define YYLTYPE_IS_TRIVIAL 1
1099
- #endif
1100
-
1101
-