gitlab-pg_query 1.3.1 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +217 -99
  3. data/README.md +92 -69
  4. data/Rakefile +85 -5
  5. data/ext/pg_query/extconf.rb +3 -40
  6. data/ext/pg_query/guc-file.c +0 -0
  7. data/ext/pg_query/include/access/amapi.h +246 -0
  8. data/ext/pg_query/include/access/attmap.h +52 -0
  9. data/ext/pg_query/include/access/attnum.h +64 -0
  10. data/ext/pg_query/include/access/clog.h +61 -0
  11. data/ext/pg_query/include/access/commit_ts.h +77 -0
  12. data/ext/pg_query/include/access/detoast.h +92 -0
  13. data/ext/pg_query/include/access/genam.h +228 -0
  14. data/ext/pg_query/include/access/gin.h +78 -0
  15. data/ext/pg_query/include/access/htup.h +89 -0
  16. data/ext/pg_query/include/access/htup_details.h +819 -0
  17. data/ext/pg_query/include/access/itup.h +161 -0
  18. data/ext/pg_query/include/access/parallel.h +82 -0
  19. data/ext/pg_query/include/access/printtup.h +35 -0
  20. data/ext/pg_query/include/access/relation.h +28 -0
  21. data/ext/pg_query/include/access/relscan.h +176 -0
  22. data/ext/pg_query/include/access/rmgr.h +35 -0
  23. data/ext/pg_query/include/access/rmgrlist.h +49 -0
  24. data/ext/pg_query/include/access/sdir.h +58 -0
  25. data/ext/pg_query/include/access/skey.h +151 -0
  26. data/ext/pg_query/include/access/stratnum.h +83 -0
  27. data/ext/pg_query/include/access/sysattr.h +29 -0
  28. data/ext/pg_query/include/access/table.h +27 -0
  29. data/ext/pg_query/include/access/tableam.h +1825 -0
  30. data/ext/pg_query/include/access/transam.h +265 -0
  31. data/ext/pg_query/include/access/tupconvert.h +51 -0
  32. data/ext/pg_query/include/access/tupdesc.h +154 -0
  33. data/ext/pg_query/include/access/tupmacs.h +247 -0
  34. data/ext/pg_query/include/access/twophase.h +61 -0
  35. data/ext/pg_query/include/access/xact.h +463 -0
  36. data/ext/pg_query/include/access/xlog.h +398 -0
  37. data/ext/pg_query/include/access/xlog_internal.h +330 -0
  38. data/ext/pg_query/include/access/xlogdefs.h +109 -0
  39. data/ext/pg_query/include/access/xloginsert.h +64 -0
  40. data/ext/pg_query/include/access/xlogreader.h +327 -0
  41. data/ext/pg_query/include/access/xlogrecord.h +227 -0
  42. data/ext/pg_query/include/bootstrap/bootstrap.h +62 -0
  43. data/ext/pg_query/include/c.h +1322 -0
  44. data/ext/pg_query/include/catalog/catalog.h +42 -0
  45. data/ext/pg_query/include/catalog/catversion.h +58 -0
  46. data/ext/pg_query/include/catalog/dependency.h +275 -0
  47. data/ext/pg_query/include/catalog/genbki.h +64 -0
  48. data/ext/pg_query/include/catalog/index.h +199 -0
  49. data/ext/pg_query/include/catalog/indexing.h +366 -0
  50. data/ext/pg_query/include/catalog/namespace.h +188 -0
  51. data/ext/pg_query/include/catalog/objectaccess.h +197 -0
  52. data/ext/pg_query/include/catalog/objectaddress.h +84 -0
  53. data/ext/pg_query/include/catalog/pg_aggregate.h +176 -0
  54. data/ext/pg_query/include/catalog/pg_aggregate_d.h +77 -0
  55. data/ext/pg_query/include/catalog/pg_am.h +60 -0
  56. data/ext/pg_query/include/catalog/pg_am_d.h +45 -0
  57. data/ext/pg_query/include/catalog/pg_attribute.h +204 -0
  58. data/ext/pg_query/include/catalog/pg_attribute_d.h +59 -0
  59. data/ext/pg_query/include/catalog/pg_authid.h +58 -0
  60. data/ext/pg_query/include/catalog/pg_authid_d.h +49 -0
  61. data/ext/pg_query/include/catalog/pg_class.h +200 -0
  62. data/ext/pg_query/include/catalog/pg_class_d.h +103 -0
  63. data/ext/pg_query/include/catalog/pg_collation.h +73 -0
  64. data/ext/pg_query/include/catalog/pg_collation_d.h +45 -0
  65. data/ext/pg_query/include/catalog/pg_constraint.h +247 -0
  66. data/ext/pg_query/include/catalog/pg_constraint_d.h +67 -0
  67. data/ext/pg_query/include/catalog/pg_control.h +250 -0
  68. data/ext/pg_query/include/catalog/pg_conversion.h +72 -0
  69. data/ext/pg_query/include/catalog/pg_conversion_d.h +35 -0
  70. data/ext/pg_query/include/catalog/pg_depend.h +73 -0
  71. data/ext/pg_query/include/catalog/pg_depend_d.h +34 -0
  72. data/ext/pg_query/include/catalog/pg_event_trigger.h +51 -0
  73. data/ext/pg_query/include/catalog/pg_event_trigger_d.h +34 -0
  74. data/ext/pg_query/include/catalog/pg_index.h +80 -0
  75. data/ext/pg_query/include/catalog/pg_index_d.h +56 -0
  76. data/ext/pg_query/include/catalog/pg_language.h +67 -0
  77. data/ext/pg_query/include/catalog/pg_language_d.h +39 -0
  78. data/ext/pg_query/include/catalog/pg_namespace.h +59 -0
  79. data/ext/pg_query/include/catalog/pg_namespace_d.h +34 -0
  80. data/ext/pg_query/include/catalog/pg_opclass.h +85 -0
  81. data/ext/pg_query/include/catalog/pg_opclass_d.h +49 -0
  82. data/ext/pg_query/include/catalog/pg_operator.h +102 -0
  83. data/ext/pg_query/include/catalog/pg_operator_d.h +106 -0
  84. data/ext/pg_query/include/catalog/pg_opfamily.h +60 -0
  85. data/ext/pg_query/include/catalog/pg_opfamily_d.h +47 -0
  86. data/ext/pg_query/include/catalog/pg_partitioned_table.h +63 -0
  87. data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +35 -0
  88. data/ext/pg_query/include/catalog/pg_proc.h +211 -0
  89. data/ext/pg_query/include/catalog/pg_proc_d.h +99 -0
  90. data/ext/pg_query/include/catalog/pg_publication.h +115 -0
  91. data/ext/pg_query/include/catalog/pg_publication_d.h +36 -0
  92. data/ext/pg_query/include/catalog/pg_replication_origin.h +57 -0
  93. data/ext/pg_query/include/catalog/pg_replication_origin_d.h +29 -0
  94. data/ext/pg_query/include/catalog/pg_statistic.h +275 -0
  95. data/ext/pg_query/include/catalog/pg_statistic_d.h +194 -0
  96. data/ext/pg_query/include/catalog/pg_statistic_ext.h +74 -0
  97. data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +40 -0
  98. data/ext/pg_query/include/catalog/pg_transform.h +45 -0
  99. data/ext/pg_query/include/catalog/pg_transform_d.h +32 -0
  100. data/ext/pg_query/include/catalog/pg_trigger.h +137 -0
  101. data/ext/pg_query/include/catalog/pg_trigger_d.h +106 -0
  102. data/ext/pg_query/include/catalog/pg_ts_config.h +50 -0
  103. data/ext/pg_query/include/catalog/pg_ts_config_d.h +32 -0
  104. data/ext/pg_query/include/catalog/pg_ts_dict.h +54 -0
  105. data/ext/pg_query/include/catalog/pg_ts_dict_d.h +33 -0
  106. data/ext/pg_query/include/catalog/pg_ts_parser.h +57 -0
  107. data/ext/pg_query/include/catalog/pg_ts_parser_d.h +35 -0
  108. data/ext/pg_query/include/catalog/pg_ts_template.h +48 -0
  109. data/ext/pg_query/include/catalog/pg_ts_template_d.h +32 -0
  110. data/ext/pg_query/include/catalog/pg_type.h +372 -0
  111. data/ext/pg_query/include/catalog/pg_type_d.h +285 -0
  112. data/ext/pg_query/include/catalog/storage.h +48 -0
  113. data/ext/pg_query/include/commands/async.h +54 -0
  114. data/ext/pg_query/include/commands/dbcommands.h +35 -0
  115. data/ext/pg_query/include/commands/defrem.h +173 -0
  116. data/ext/pg_query/include/commands/event_trigger.h +88 -0
  117. data/ext/pg_query/include/commands/explain.h +127 -0
  118. data/ext/pg_query/include/commands/prepare.h +61 -0
  119. data/ext/pg_query/include/commands/tablespace.h +67 -0
  120. data/ext/pg_query/include/commands/trigger.h +277 -0
  121. data/ext/pg_query/include/commands/user.h +37 -0
  122. data/ext/pg_query/include/commands/vacuum.h +293 -0
  123. data/ext/pg_query/include/commands/variable.h +38 -0
  124. data/ext/pg_query/include/common/file_perm.h +56 -0
  125. data/ext/pg_query/include/common/hashfn.h +104 -0
  126. data/ext/pg_query/include/common/ip.h +37 -0
  127. data/ext/pg_query/include/common/keywords.h +33 -0
  128. data/ext/pg_query/include/common/kwlookup.h +44 -0
  129. data/ext/pg_query/include/common/relpath.h +90 -0
  130. data/ext/pg_query/include/common/string.h +19 -0
  131. data/ext/pg_query/include/common/unicode_combining_table.h +196 -0
  132. data/ext/pg_query/include/datatype/timestamp.h +197 -0
  133. data/ext/pg_query/include/executor/execdesc.h +70 -0
  134. data/ext/pg_query/include/executor/executor.h +614 -0
  135. data/ext/pg_query/include/executor/functions.h +41 -0
  136. data/ext/pg_query/include/executor/instrument.h +101 -0
  137. data/ext/pg_query/include/executor/spi.h +175 -0
  138. data/ext/pg_query/include/executor/tablefunc.h +67 -0
  139. data/ext/pg_query/include/executor/tuptable.h +487 -0
  140. data/ext/pg_query/include/fmgr.h +775 -0
  141. data/ext/pg_query/include/funcapi.h +348 -0
  142. data/ext/pg_query/include/getaddrinfo.h +162 -0
  143. data/ext/pg_query/include/jit/jit.h +105 -0
  144. data/ext/pg_query/include/kwlist_d.h +1072 -0
  145. data/ext/pg_query/include/lib/ilist.h +727 -0
  146. data/ext/pg_query/include/lib/pairingheap.h +102 -0
  147. data/ext/pg_query/include/lib/simplehash.h +1059 -0
  148. data/ext/pg_query/include/lib/stringinfo.h +161 -0
  149. data/ext/pg_query/include/libpq/auth.h +29 -0
  150. data/ext/pg_query/include/libpq/crypt.h +46 -0
  151. data/ext/pg_query/include/libpq/hba.h +140 -0
  152. data/ext/pg_query/include/libpq/libpq-be.h +326 -0
  153. data/ext/pg_query/include/libpq/libpq.h +133 -0
  154. data/ext/pg_query/include/libpq/pqcomm.h +208 -0
  155. data/ext/pg_query/include/libpq/pqformat.h +210 -0
  156. data/ext/pg_query/include/libpq/pqsignal.h +42 -0
  157. data/ext/pg_query/include/mb/pg_wchar.h +672 -0
  158. data/ext/pg_query/include/mb/stringinfo_mb.h +24 -0
  159. data/ext/pg_query/include/miscadmin.h +476 -0
  160. data/ext/pg_query/include/nodes/bitmapset.h +122 -0
  161. data/ext/pg_query/include/nodes/execnodes.h +2520 -0
  162. data/ext/pg_query/include/nodes/extensible.h +160 -0
  163. data/ext/pg_query/include/nodes/lockoptions.h +61 -0
  164. data/ext/pg_query/include/nodes/makefuncs.h +108 -0
  165. data/ext/pg_query/include/nodes/memnodes.h +108 -0
  166. data/ext/pg_query/include/nodes/nodeFuncs.h +162 -0
  167. data/ext/pg_query/include/nodes/nodes.h +842 -0
  168. data/ext/pg_query/include/nodes/params.h +170 -0
  169. data/ext/pg_query/include/nodes/parsenodes.h +3579 -0
  170. data/ext/pg_query/include/nodes/pathnodes.h +2556 -0
  171. data/ext/pg_query/include/nodes/pg_list.h +605 -0
  172. data/ext/pg_query/include/nodes/plannodes.h +1251 -0
  173. data/ext/pg_query/include/nodes/primnodes.h +1541 -0
  174. data/ext/pg_query/include/nodes/print.h +34 -0
  175. data/ext/pg_query/include/nodes/tidbitmap.h +75 -0
  176. data/ext/pg_query/include/nodes/value.h +61 -0
  177. data/ext/pg_query/include/optimizer/cost.h +206 -0
  178. data/ext/pg_query/include/optimizer/geqo.h +88 -0
  179. data/ext/pg_query/include/optimizer/geqo_gene.h +45 -0
  180. data/ext/pg_query/include/optimizer/optimizer.h +199 -0
  181. data/ext/pg_query/include/optimizer/paths.h +249 -0
  182. data/ext/pg_query/include/optimizer/planmain.h +119 -0
  183. data/ext/pg_query/include/parser/analyze.h +49 -0
  184. data/ext/pg_query/include/parser/gram.h +1067 -0
  185. data/ext/pg_query/include/parser/gramparse.h +75 -0
  186. data/ext/pg_query/include/parser/kwlist.h +477 -0
  187. data/ext/pg_query/include/parser/parse_agg.h +68 -0
  188. data/ext/pg_query/include/parser/parse_clause.h +54 -0
  189. data/ext/pg_query/include/parser/parse_coerce.h +97 -0
  190. data/ext/pg_query/include/parser/parse_collate.h +27 -0
  191. data/ext/pg_query/include/parser/parse_expr.h +26 -0
  192. data/ext/pg_query/include/parser/parse_func.h +73 -0
  193. data/ext/pg_query/include/parser/parse_node.h +327 -0
  194. data/ext/pg_query/include/parser/parse_oper.h +67 -0
  195. data/ext/pg_query/include/parser/parse_relation.h +123 -0
  196. data/ext/pg_query/include/parser/parse_target.h +46 -0
  197. data/ext/pg_query/include/parser/parse_type.h +60 -0
  198. data/ext/pg_query/include/parser/parser.h +41 -0
  199. data/ext/pg_query/include/parser/parsetree.h +61 -0
  200. data/ext/pg_query/include/parser/scanner.h +152 -0
  201. data/ext/pg_query/include/parser/scansup.h +30 -0
  202. data/ext/pg_query/include/partitioning/partdefs.h +26 -0
  203. data/ext/pg_query/include/pg_config.h +989 -0
  204. data/ext/pg_query/include/pg_config_ext.h +8 -0
  205. data/ext/pg_query/include/pg_config_manual.h +350 -0
  206. data/ext/pg_query/include/pg_config_os.h +8 -0
  207. data/ext/pg_query/include/pg_getopt.h +56 -0
  208. data/ext/pg_query/include/pg_query.h +121 -0
  209. data/ext/pg_query/include/pg_query_enum_defs.c +2454 -0
  210. data/ext/pg_query/include/pg_query_fingerprint_conds.c +875 -0
  211. data/ext/pg_query/include/pg_query_fingerprint_defs.c +12413 -0
  212. data/ext/pg_query/include/pg_query_json_helper.c +61 -0
  213. data/ext/pg_query/include/pg_query_outfuncs_conds.c +686 -0
  214. data/ext/pg_query/include/pg_query_outfuncs_defs.c +2437 -0
  215. data/ext/pg_query/include/pg_query_readfuncs_conds.c +222 -0
  216. data/ext/pg_query/include/pg_query_readfuncs_defs.c +2878 -0
  217. data/ext/pg_query/include/pg_trace.h +17 -0
  218. data/ext/pg_query/include/pgstat.h +1487 -0
  219. data/ext/pg_query/include/pgtime.h +84 -0
  220. data/ext/pg_query/include/pl_gram.h +385 -0
  221. data/ext/pg_query/include/pl_reserved_kwlist.h +52 -0
  222. data/ext/pg_query/include/pl_reserved_kwlist_d.h +114 -0
  223. data/ext/pg_query/include/pl_unreserved_kwlist.h +112 -0
  224. data/ext/pg_query/include/pl_unreserved_kwlist_d.h +246 -0
  225. data/ext/pg_query/include/plerrcodes.h +990 -0
  226. data/ext/pg_query/include/plpgsql.h +1347 -0
  227. data/ext/pg_query/include/port.h +524 -0
  228. data/ext/pg_query/include/port/atomics.h +524 -0
  229. data/ext/pg_query/include/port/atomics/arch-arm.h +26 -0
  230. data/ext/pg_query/include/port/atomics/arch-ppc.h +254 -0
  231. data/ext/pg_query/include/port/atomics/arch-x86.h +252 -0
  232. data/ext/pg_query/include/port/atomics/fallback.h +170 -0
  233. data/ext/pg_query/include/port/atomics/generic-gcc.h +286 -0
  234. data/ext/pg_query/include/port/atomics/generic.h +401 -0
  235. data/ext/pg_query/include/port/pg_bitutils.h +226 -0
  236. data/ext/pg_query/include/port/pg_bswap.h +161 -0
  237. data/ext/pg_query/include/port/pg_crc32c.h +101 -0
  238. data/ext/pg_query/include/portability/instr_time.h +256 -0
  239. data/ext/pg_query/include/postgres.h +764 -0
  240. data/ext/pg_query/include/postgres_ext.h +74 -0
  241. data/ext/pg_query/include/postmaster/autovacuum.h +83 -0
  242. data/ext/pg_query/include/postmaster/bgworker.h +161 -0
  243. data/ext/pg_query/include/postmaster/bgworker_internals.h +64 -0
  244. data/ext/pg_query/include/postmaster/bgwriter.h +45 -0
  245. data/ext/pg_query/include/postmaster/fork_process.h +17 -0
  246. data/ext/pg_query/include/postmaster/interrupt.h +32 -0
  247. data/ext/pg_query/include/postmaster/pgarch.h +39 -0
  248. data/ext/pg_query/include/postmaster/postmaster.h +77 -0
  249. data/ext/pg_query/include/postmaster/syslogger.h +98 -0
  250. data/ext/pg_query/include/postmaster/walwriter.h +21 -0
  251. data/ext/pg_query/include/protobuf-c.h +1106 -0
  252. data/ext/pg_query/include/protobuf-c/protobuf-c.h +1106 -0
  253. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +10846 -0
  254. data/ext/pg_query/include/protobuf/pg_query.pb.h +124718 -0
  255. data/ext/pg_query/include/regex/regex.h +184 -0
  256. data/ext/pg_query/include/replication/logicallauncher.h +31 -0
  257. data/ext/pg_query/include/replication/logicalproto.h +110 -0
  258. data/ext/pg_query/include/replication/logicalworker.h +19 -0
  259. data/ext/pg_query/include/replication/origin.h +73 -0
  260. data/ext/pg_query/include/replication/reorderbuffer.h +467 -0
  261. data/ext/pg_query/include/replication/slot.h +219 -0
  262. data/ext/pg_query/include/replication/syncrep.h +115 -0
  263. data/ext/pg_query/include/replication/walreceiver.h +340 -0
  264. data/ext/pg_query/include/replication/walsender.h +74 -0
  265. data/ext/pg_query/include/rewrite/prs2lock.h +46 -0
  266. data/ext/pg_query/include/rewrite/rewriteHandler.h +40 -0
  267. data/ext/pg_query/include/rewrite/rewriteManip.h +87 -0
  268. data/ext/pg_query/include/rewrite/rewriteSupport.h +26 -0
  269. data/ext/pg_query/include/storage/backendid.h +37 -0
  270. data/ext/pg_query/include/storage/block.h +121 -0
  271. data/ext/pg_query/include/storage/buf.h +46 -0
  272. data/ext/pg_query/include/storage/bufmgr.h +292 -0
  273. data/ext/pg_query/include/storage/bufpage.h +459 -0
  274. data/ext/pg_query/include/storage/condition_variable.h +62 -0
  275. data/ext/pg_query/include/storage/dsm.h +61 -0
  276. data/ext/pg_query/include/storage/dsm_impl.h +75 -0
  277. data/ext/pg_query/include/storage/fd.h +168 -0
  278. data/ext/pg_query/include/storage/ipc.h +81 -0
  279. data/ext/pg_query/include/storage/item.h +19 -0
  280. data/ext/pg_query/include/storage/itemid.h +184 -0
  281. data/ext/pg_query/include/storage/itemptr.h +206 -0
  282. data/ext/pg_query/include/storage/large_object.h +100 -0
  283. data/ext/pg_query/include/storage/latch.h +190 -0
  284. data/ext/pg_query/include/storage/lmgr.h +114 -0
  285. data/ext/pg_query/include/storage/lock.h +612 -0
  286. data/ext/pg_query/include/storage/lockdefs.h +59 -0
  287. data/ext/pg_query/include/storage/lwlock.h +232 -0
  288. data/ext/pg_query/include/storage/lwlocknames.h +51 -0
  289. data/ext/pg_query/include/storage/off.h +57 -0
  290. data/ext/pg_query/include/storage/pg_sema.h +61 -0
  291. data/ext/pg_query/include/storage/pg_shmem.h +90 -0
  292. data/ext/pg_query/include/storage/pmsignal.h +94 -0
  293. data/ext/pg_query/include/storage/predicate.h +87 -0
  294. data/ext/pg_query/include/storage/proc.h +333 -0
  295. data/ext/pg_query/include/storage/proclist_types.h +51 -0
  296. data/ext/pg_query/include/storage/procsignal.h +75 -0
  297. data/ext/pg_query/include/storage/relfilenode.h +99 -0
  298. data/ext/pg_query/include/storage/s_lock.h +1047 -0
  299. data/ext/pg_query/include/storage/sharedfileset.h +45 -0
  300. data/ext/pg_query/include/storage/shm_mq.h +85 -0
  301. data/ext/pg_query/include/storage/shm_toc.h +58 -0
  302. data/ext/pg_query/include/storage/shmem.h +81 -0
  303. data/ext/pg_query/include/storage/sinval.h +153 -0
  304. data/ext/pg_query/include/storage/sinvaladt.h +43 -0
  305. data/ext/pg_query/include/storage/smgr.h +109 -0
  306. data/ext/pg_query/include/storage/spin.h +77 -0
  307. data/ext/pg_query/include/storage/standby.h +91 -0
  308. data/ext/pg_query/include/storage/standbydefs.h +74 -0
  309. data/ext/pg_query/include/storage/sync.h +62 -0
  310. data/ext/pg_query/include/tcop/cmdtag.h +58 -0
  311. data/ext/pg_query/include/tcop/cmdtaglist.h +217 -0
  312. data/ext/pg_query/include/tcop/deparse_utility.h +108 -0
  313. data/ext/pg_query/include/tcop/dest.h +149 -0
  314. data/ext/pg_query/include/tcop/fastpath.h +21 -0
  315. data/ext/pg_query/include/tcop/pquery.h +45 -0
  316. data/ext/pg_query/include/tcop/tcopprot.h +89 -0
  317. data/ext/pg_query/include/tcop/utility.h +108 -0
  318. data/ext/pg_query/include/tsearch/ts_cache.h +98 -0
  319. data/ext/pg_query/include/utils/acl.h +312 -0
  320. data/ext/pg_query/include/utils/aclchk_internal.h +45 -0
  321. data/ext/pg_query/include/utils/array.h +458 -0
  322. data/ext/pg_query/include/utils/builtins.h +127 -0
  323. data/ext/pg_query/include/utils/bytea.h +27 -0
  324. data/ext/pg_query/include/utils/catcache.h +231 -0
  325. data/ext/pg_query/include/utils/date.h +90 -0
  326. data/ext/pg_query/include/utils/datetime.h +343 -0
  327. data/ext/pg_query/include/utils/datum.h +68 -0
  328. data/ext/pg_query/include/utils/dsa.h +123 -0
  329. data/ext/pg_query/include/utils/dynahash.h +19 -0
  330. data/ext/pg_query/include/utils/elog.h +439 -0
  331. data/ext/pg_query/include/utils/errcodes.h +352 -0
  332. data/ext/pg_query/include/utils/expandeddatum.h +159 -0
  333. data/ext/pg_query/include/utils/expandedrecord.h +231 -0
  334. data/ext/pg_query/include/utils/float.h +356 -0
  335. data/ext/pg_query/include/utils/fmgroids.h +2657 -0
  336. data/ext/pg_query/include/utils/fmgrprotos.h +2646 -0
  337. data/ext/pg_query/include/utils/fmgrtab.h +48 -0
  338. data/ext/pg_query/include/utils/guc.h +443 -0
  339. data/ext/pg_query/include/utils/guc_tables.h +272 -0
  340. data/ext/pg_query/include/utils/hsearch.h +149 -0
  341. data/ext/pg_query/include/utils/inval.h +64 -0
  342. data/ext/pg_query/include/utils/lsyscache.h +197 -0
  343. data/ext/pg_query/include/utils/memdebug.h +82 -0
  344. data/ext/pg_query/include/utils/memutils.h +225 -0
  345. data/ext/pg_query/include/utils/numeric.h +76 -0
  346. data/ext/pg_query/include/utils/palloc.h +136 -0
  347. data/ext/pg_query/include/utils/partcache.h +102 -0
  348. data/ext/pg_query/include/utils/pg_locale.h +119 -0
  349. data/ext/pg_query/include/utils/pg_lsn.h +29 -0
  350. data/ext/pg_query/include/utils/pidfile.h +56 -0
  351. data/ext/pg_query/include/utils/plancache.h +235 -0
  352. data/ext/pg_query/include/utils/portal.h +241 -0
  353. data/ext/pg_query/include/utils/probes.h +114 -0
  354. data/ext/pg_query/include/utils/ps_status.h +25 -0
  355. data/ext/pg_query/include/utils/queryenvironment.h +74 -0
  356. data/ext/pg_query/include/utils/regproc.h +28 -0
  357. data/ext/pg_query/include/utils/rel.h +644 -0
  358. data/ext/pg_query/include/utils/relcache.h +151 -0
  359. data/ext/pg_query/include/utils/reltrigger.h +81 -0
  360. data/ext/pg_query/include/utils/resowner.h +86 -0
  361. data/ext/pg_query/include/utils/rls.h +50 -0
  362. data/ext/pg_query/include/utils/ruleutils.h +44 -0
  363. data/ext/pg_query/include/utils/sharedtuplestore.h +61 -0
  364. data/ext/pg_query/include/utils/snapmgr.h +158 -0
  365. data/ext/pg_query/include/utils/snapshot.h +206 -0
  366. data/ext/pg_query/include/utils/sortsupport.h +276 -0
  367. data/ext/pg_query/include/utils/syscache.h +219 -0
  368. data/ext/pg_query/include/utils/timeout.h +88 -0
  369. data/ext/pg_query/include/utils/timestamp.h +116 -0
  370. data/ext/pg_query/include/utils/tuplesort.h +277 -0
  371. data/ext/pg_query/include/utils/tuplestore.h +91 -0
  372. data/ext/pg_query/include/utils/typcache.h +202 -0
  373. data/ext/pg_query/include/utils/tzparser.h +39 -0
  374. data/ext/pg_query/include/utils/varlena.h +39 -0
  375. data/ext/pg_query/include/utils/xml.h +84 -0
  376. data/ext/pg_query/include/xxhash.h +5445 -0
  377. data/ext/pg_query/include/xxhash/xxhash.h +5445 -0
  378. data/ext/pg_query/pg_query.c +104 -0
  379. data/ext/pg_query/pg_query.pb-c.c +37628 -0
  380. data/ext/pg_query/pg_query_deparse.c +9959 -0
  381. data/ext/pg_query/pg_query_fingerprint.c +295 -0
  382. data/ext/pg_query/pg_query_fingerprint.h +8 -0
  383. data/ext/pg_query/pg_query_internal.h +24 -0
  384. data/ext/pg_query/pg_query_json_plpgsql.c +738 -0
  385. data/ext/pg_query/pg_query_json_plpgsql.h +9 -0
  386. data/ext/pg_query/pg_query_normalize.c +439 -0
  387. data/ext/pg_query/pg_query_outfuncs.h +10 -0
  388. data/ext/pg_query/pg_query_outfuncs_json.c +297 -0
  389. data/ext/pg_query/pg_query_outfuncs_protobuf.c +237 -0
  390. data/ext/pg_query/pg_query_parse.c +148 -0
  391. data/ext/pg_query/pg_query_parse_plpgsql.c +460 -0
  392. data/ext/pg_query/pg_query_readfuncs.h +11 -0
  393. data/ext/pg_query/pg_query_readfuncs_protobuf.c +142 -0
  394. data/ext/pg_query/pg_query_ruby.c +108 -12
  395. data/ext/pg_query/pg_query_scan.c +173 -0
  396. data/ext/pg_query/pg_query_split.c +221 -0
  397. data/ext/pg_query/protobuf-c.c +3660 -0
  398. data/ext/pg_query/src_backend_catalog_namespace.c +1051 -0
  399. data/ext/pg_query/src_backend_catalog_pg_proc.c +142 -0
  400. data/ext/pg_query/src_backend_commands_define.c +117 -0
  401. data/ext/pg_query/src_backend_libpq_pqcomm.c +651 -0
  402. data/ext/pg_query/src_backend_nodes_bitmapset.c +513 -0
  403. data/ext/pg_query/src_backend_nodes_copyfuncs.c +6013 -0
  404. data/ext/pg_query/src_backend_nodes_equalfuncs.c +4003 -0
  405. data/ext/pg_query/src_backend_nodes_extensible.c +99 -0
  406. data/ext/pg_query/src_backend_nodes_list.c +922 -0
  407. data/ext/pg_query/src_backend_nodes_makefuncs.c +417 -0
  408. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +1363 -0
  409. data/ext/pg_query/src_backend_nodes_value.c +84 -0
  410. data/ext/pg_query/src_backend_parser_gram.c +47456 -0
  411. data/ext/pg_query/src_backend_parser_parse_expr.c +313 -0
  412. data/ext/pg_query/src_backend_parser_parser.c +497 -0
  413. data/ext/pg_query/src_backend_parser_scan.c +7091 -0
  414. data/ext/pg_query/src_backend_parser_scansup.c +160 -0
  415. data/ext/pg_query/src_backend_postmaster_postmaster.c +2230 -0
  416. data/ext/pg_query/src_backend_storage_ipc_ipc.c +192 -0
  417. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +370 -0
  418. data/ext/pg_query/src_backend_tcop_postgres.c +776 -0
  419. data/ext/pg_query/src_backend_utils_adt_datum.c +326 -0
  420. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +98 -0
  421. data/ext/pg_query/src_backend_utils_adt_format_type.c +136 -0
  422. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +1683 -0
  423. data/ext/pg_query/src_backend_utils_error_assert.c +74 -0
  424. data/ext/pg_query/src_backend_utils_error_elog.c +1748 -0
  425. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +570 -0
  426. data/ext/pg_query/src_backend_utils_hash_dynahash.c +1086 -0
  427. data/ext/pg_query/src_backend_utils_init_globals.c +168 -0
  428. data/ext/pg_query/src_backend_utils_mb_mbutils.c +839 -0
  429. data/ext/pg_query/src_backend_utils_misc_guc.c +1831 -0
  430. data/ext/pg_query/src_backend_utils_mmgr_aset.c +1560 -0
  431. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +1006 -0
  432. data/ext/pg_query/src_common_encnames.c +158 -0
  433. data/ext/pg_query/src_common_keywords.c +39 -0
  434. data/ext/pg_query/src_common_kwlist_d.h +1081 -0
  435. data/ext/pg_query/src_common_kwlookup.c +91 -0
  436. data/ext/pg_query/src_common_psprintf.c +158 -0
  437. data/ext/pg_query/src_common_string.c +86 -0
  438. data/ext/pg_query/src_common_stringinfo.c +336 -0
  439. data/ext/pg_query/src_common_wchar.c +1651 -0
  440. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1133 -0
  441. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +877 -0
  442. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +6533 -0
  443. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +107 -0
  444. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +123 -0
  445. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +671 -0
  446. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +255 -0
  447. data/ext/pg_query/src_port_erand48.c +127 -0
  448. data/ext/pg_query/src_port_pg_bitutils.c +246 -0
  449. data/ext/pg_query/src_port_pgsleep.c +69 -0
  450. data/ext/pg_query/src_port_pgstrcasecmp.c +83 -0
  451. data/ext/pg_query/src_port_qsort.c +240 -0
  452. data/ext/pg_query/src_port_random.c +31 -0
  453. data/ext/pg_query/src_port_snprintf.c +1449 -0
  454. data/ext/pg_query/src_port_strerror.c +324 -0
  455. data/ext/pg_query/src_port_strnlen.c +39 -0
  456. data/ext/pg_query/xxhash.c +43 -0
  457. data/lib/pg_query.rb +7 -4
  458. data/lib/pg_query/constants.rb +21 -0
  459. data/lib/pg_query/deparse.rb +15 -1581
  460. data/lib/pg_query/filter_columns.rb +88 -85
  461. data/lib/pg_query/fingerprint.rb +122 -87
  462. data/lib/pg_query/json_field_names.rb +1402 -0
  463. data/lib/pg_query/node.rb +31 -0
  464. data/lib/pg_query/param_refs.rb +42 -37
  465. data/lib/pg_query/parse.rb +220 -203
  466. data/lib/pg_query/parse_error.rb +1 -1
  467. data/lib/pg_query/pg_query_pb.rb +3211 -0
  468. data/lib/pg_query/scan.rb +23 -0
  469. data/lib/pg_query/treewalker.rb +24 -40
  470. data/lib/pg_query/truncate.rb +71 -42
  471. data/lib/pg_query/version.rb +2 -2
  472. metadata +472 -11
  473. data/ext/pg_query/pg_query_ruby.h +0 -10
  474. data/lib/pg_query/deep_dup.rb +0 -16
  475. data/lib/pg_query/deparse/alter_table.rb +0 -42
  476. data/lib/pg_query/deparse/interval.rb +0 -105
  477. data/lib/pg_query/deparse/keywords.rb +0 -159
  478. data/lib/pg_query/deparse/rename.rb +0 -41
  479. data/lib/pg_query/legacy_parsetree.rb +0 -109
  480. data/lib/pg_query/node_types.rb +0 -296
@@ -0,0 +1,119 @@
1
+ /*-------------------------------------------------------------------------
2
+ *
3
+ * planmain.h
4
+ * prototypes for various files in optimizer/plan
5
+ *
6
+ *
7
+ * Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
8
+ * Portions Copyright (c) 1994, Regents of the University of California
9
+ *
10
+ * src/include/optimizer/planmain.h
11
+ *
12
+ *-------------------------------------------------------------------------
13
+ */
14
+ #ifndef PLANMAIN_H
15
+ #define PLANMAIN_H
16
+
17
+ #include "nodes/pathnodes.h"
18
+ #include "nodes/plannodes.h"
19
+
20
+ /* GUC parameters */
21
+ #define DEFAULT_CURSOR_TUPLE_FRACTION 0.1
22
+ extern double cursor_tuple_fraction;
23
+
24
+ /* query_planner callback to compute query_pathkeys */
25
+ typedef void (*query_pathkeys_callback) (PlannerInfo *root, void *extra);
26
+
27
+ /*
28
+ * prototypes for plan/planmain.c
29
+ */
30
+ extern RelOptInfo *query_planner(PlannerInfo *root,
31
+ query_pathkeys_callback qp_callback, void *qp_extra);
32
+
33
+ /*
34
+ * prototypes for plan/planagg.c
35
+ */
36
+ extern void preprocess_minmax_aggregates(PlannerInfo *root);
37
+
38
+ /*
39
+ * prototypes for plan/createplan.c
40
+ */
41
+ extern Plan *create_plan(PlannerInfo *root, Path *best_path);
42
+ extern ForeignScan *make_foreignscan(List *qptlist, List *qpqual,
43
+ Index scanrelid, List *fdw_exprs, List *fdw_private,
44
+ List *fdw_scan_tlist, List *fdw_recheck_quals,
45
+ Plan *outer_plan);
46
+ extern Plan *change_plan_targetlist(Plan *subplan, List *tlist,
47
+ bool tlist_parallel_safe);
48
+ extern Plan *materialize_finished_plan(Plan *subplan);
49
+ extern bool is_projection_capable_path(Path *path);
50
+ extern bool is_projection_capable_plan(Plan *plan);
51
+
52
+ /* External use of these functions is deprecated: */
53
+ extern Sort *make_sort_from_sortclauses(List *sortcls, Plan *lefttree);
54
+ extern Agg *make_agg(List *tlist, List *qual,
55
+ AggStrategy aggstrategy, AggSplit aggsplit,
56
+ int numGroupCols, AttrNumber *grpColIdx, Oid *grpOperators, Oid *grpCollations,
57
+ List *groupingSets, List *chain, double dNumGroups,
58
+ Size transitionSpace, Plan *lefttree);
59
+ extern Limit *make_limit(Plan *lefttree, Node *limitOffset, Node *limitCount,
60
+ LimitOption limitOption, int uniqNumCols,
61
+ AttrNumber *uniqColIdx, Oid *uniqOperators,
62
+ Oid *uniqCollations);
63
+
64
+ /*
65
+ * prototypes for plan/initsplan.c
66
+ */
67
+ extern int from_collapse_limit;
68
+ extern int join_collapse_limit;
69
+
70
+ extern void add_base_rels_to_query(PlannerInfo *root, Node *jtnode);
71
+ extern void add_other_rels_to_query(PlannerInfo *root);
72
+ extern void build_base_rel_tlists(PlannerInfo *root, List *final_tlist);
73
+ extern void add_vars_to_targetlist(PlannerInfo *root, List *vars,
74
+ Relids where_needed, bool create_new_ph);
75
+ extern void find_lateral_references(PlannerInfo *root);
76
+ extern void create_lateral_join_info(PlannerInfo *root);
77
+ extern List *deconstruct_jointree(PlannerInfo *root);
78
+ extern void distribute_restrictinfo_to_rels(PlannerInfo *root,
79
+ RestrictInfo *restrictinfo);
80
+ extern void process_implied_equality(PlannerInfo *root,
81
+ Oid opno,
82
+ Oid collation,
83
+ Expr *item1,
84
+ Expr *item2,
85
+ Relids qualscope,
86
+ Relids nullable_relids,
87
+ Index security_level,
88
+ bool below_outer_join,
89
+ bool both_const);
90
+ extern RestrictInfo *build_implied_join_equality(PlannerInfo *root,
91
+ Oid opno,
92
+ Oid collation,
93
+ Expr *item1,
94
+ Expr *item2,
95
+ Relids qualscope,
96
+ Relids nullable_relids,
97
+ Index security_level);
98
+ extern void match_foreign_keys_to_quals(PlannerInfo *root);
99
+
100
+ /*
101
+ * prototypes for plan/analyzejoins.c
102
+ */
103
+ extern List *remove_useless_joins(PlannerInfo *root, List *joinlist);
104
+ extern void reduce_unique_semijoins(PlannerInfo *root);
105
+ extern bool query_supports_distinctness(Query *query);
106
+ extern bool query_is_distinct_for(Query *query, List *colnos, List *opids);
107
+ extern bool innerrel_is_unique(PlannerInfo *root,
108
+ Relids joinrelids, Relids outerrelids, RelOptInfo *innerrel,
109
+ JoinType jointype, List *restrictlist, bool force_cache);
110
+
111
+ /*
112
+ * prototypes for plan/setrefs.c
113
+ */
114
+ extern Plan *set_plan_references(PlannerInfo *root, Plan *plan);
115
+ extern void record_plan_function_dependency(PlannerInfo *root, Oid funcid);
116
+ extern void record_plan_type_dependency(PlannerInfo *root, Oid typid);
117
+ extern bool extract_query_dependencies_walker(Node *node, PlannerInfo *root);
118
+
119
+ #endif /* PLANMAIN_H */
@@ -0,0 +1,49 @@
1
+ /*-------------------------------------------------------------------------
2
+ *
3
+ * analyze.h
4
+ * parse analysis for optimizable statements
5
+ *
6
+ *
7
+ * Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
8
+ * Portions Copyright (c) 1994, Regents of the University of California
9
+ *
10
+ * src/include/parser/analyze.h
11
+ *
12
+ *-------------------------------------------------------------------------
13
+ */
14
+ #ifndef ANALYZE_H
15
+ #define ANALYZE_H
16
+
17
+ #include "parser/parse_node.h"
18
+
19
+ /* Hook for plugins to get control at end of parse analysis */
20
+ typedef void (*post_parse_analyze_hook_type) (ParseState *pstate,
21
+ Query *query);
22
+ extern PGDLLIMPORT post_parse_analyze_hook_type post_parse_analyze_hook;
23
+
24
+
25
+ extern Query *parse_analyze(RawStmt *parseTree, const char *sourceText,
26
+ Oid *paramTypes, int numParams, QueryEnvironment *queryEnv);
27
+ extern Query *parse_analyze_varparams(RawStmt *parseTree, const char *sourceText,
28
+ Oid **paramTypes, int *numParams);
29
+
30
+ extern Query *parse_sub_analyze(Node *parseTree, ParseState *parentParseState,
31
+ CommonTableExpr *parentCTE,
32
+ bool locked_from_parent,
33
+ bool resolve_unknowns);
34
+
35
+ extern Query *transformTopLevelStmt(ParseState *pstate, RawStmt *parseTree);
36
+ extern Query *transformStmt(ParseState *pstate, Node *parseTree);
37
+
38
+ extern bool analyze_requires_snapshot(RawStmt *parseTree);
39
+
40
+ extern const char *LCS_asString(LockClauseStrength strength);
41
+ extern void CheckSelectLocking(Query *qry, LockClauseStrength strength);
42
+ extern void applyLockingClause(Query *qry, Index rtindex,
43
+ LockClauseStrength strength,
44
+ LockWaitPolicy waitPolicy, bool pushedDown);
45
+
46
+ extern List *BuildOnConflictExcludedTargetlist(Relation targetrel,
47
+ Index exclRelIndex);
48
+
49
+ #endif /* ANALYZE_H */
@@ -0,0 +1,1067 @@
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
+ ASSERTION = 296,
81
+ ASSIGNMENT = 297,
82
+ ASYMMETRIC = 298,
83
+ AT = 299,
84
+ ATTACH = 300,
85
+ ATTRIBUTE = 301,
86
+ AUTHORIZATION = 302,
87
+ BACKWARD = 303,
88
+ BEFORE = 304,
89
+ BEGIN_P = 305,
90
+ BETWEEN = 306,
91
+ BIGINT = 307,
92
+ BINARY = 308,
93
+ BIT = 309,
94
+ BOOLEAN_P = 310,
95
+ BOTH = 311,
96
+ BY = 312,
97
+ CACHE = 313,
98
+ CALL = 314,
99
+ CALLED = 315,
100
+ CASCADE = 316,
101
+ CASCADED = 317,
102
+ CASE = 318,
103
+ CAST = 319,
104
+ CATALOG_P = 320,
105
+ CHAIN = 321,
106
+ CHAR_P = 322,
107
+ CHARACTER = 323,
108
+ CHARACTERISTICS = 324,
109
+ CHECK = 325,
110
+ CHECKPOINT = 326,
111
+ CLASS = 327,
112
+ CLOSE = 328,
113
+ CLUSTER = 329,
114
+ COALESCE = 330,
115
+ COLLATE = 331,
116
+ COLLATION = 332,
117
+ COLUMN = 333,
118
+ COLUMNS = 334,
119
+ COMMENT = 335,
120
+ COMMENTS = 336,
121
+ COMMIT = 337,
122
+ COMMITTED = 338,
123
+ CONCURRENTLY = 339,
124
+ CONFIGURATION = 340,
125
+ CONFLICT = 341,
126
+ CONNECTION = 342,
127
+ CONSTRAINT = 343,
128
+ CONSTRAINTS = 344,
129
+ CONTENT_P = 345,
130
+ CONTINUE_P = 346,
131
+ CONVERSION_P = 347,
132
+ COPY = 348,
133
+ COST = 349,
134
+ CREATE = 350,
135
+ CROSS = 351,
136
+ CSV = 352,
137
+ CUBE = 353,
138
+ CURRENT_P = 354,
139
+ CURRENT_CATALOG = 355,
140
+ CURRENT_DATE = 356,
141
+ CURRENT_ROLE = 357,
142
+ CURRENT_SCHEMA = 358,
143
+ CURRENT_TIME = 359,
144
+ CURRENT_TIMESTAMP = 360,
145
+ CURRENT_USER = 361,
146
+ CURSOR = 362,
147
+ CYCLE = 363,
148
+ DATA_P = 364,
149
+ DATABASE = 365,
150
+ DAY_P = 366,
151
+ DEALLOCATE = 367,
152
+ DEC = 368,
153
+ DECIMAL_P = 369,
154
+ DECLARE = 370,
155
+ DEFAULT = 371,
156
+ DEFAULTS = 372,
157
+ DEFERRABLE = 373,
158
+ DEFERRED = 374,
159
+ DEFINER = 375,
160
+ DELETE_P = 376,
161
+ DELIMITER = 377,
162
+ DELIMITERS = 378,
163
+ DEPENDS = 379,
164
+ DESC = 380,
165
+ DETACH = 381,
166
+ DICTIONARY = 382,
167
+ DISABLE_P = 383,
168
+ DISCARD = 384,
169
+ DISTINCT = 385,
170
+ DO = 386,
171
+ DOCUMENT_P = 387,
172
+ DOMAIN_P = 388,
173
+ DOUBLE_P = 389,
174
+ DROP = 390,
175
+ EACH = 391,
176
+ ELSE = 392,
177
+ ENABLE_P = 393,
178
+ ENCODING = 394,
179
+ ENCRYPTED = 395,
180
+ END_P = 396,
181
+ ENUM_P = 397,
182
+ ESCAPE = 398,
183
+ EVENT = 399,
184
+ EXCEPT = 400,
185
+ EXCLUDE = 401,
186
+ EXCLUDING = 402,
187
+ EXCLUSIVE = 403,
188
+ EXECUTE = 404,
189
+ EXISTS = 405,
190
+ EXPLAIN = 406,
191
+ EXPRESSION = 407,
192
+ EXTENSION = 408,
193
+ EXTERNAL = 409,
194
+ EXTRACT = 410,
195
+ FALSE_P = 411,
196
+ FAMILY = 412,
197
+ FETCH = 413,
198
+ FILTER = 414,
199
+ FIRST_P = 415,
200
+ FLOAT_P = 416,
201
+ FOLLOWING = 417,
202
+ FOR = 418,
203
+ FORCE = 419,
204
+ FOREIGN = 420,
205
+ FORWARD = 421,
206
+ FREEZE = 422,
207
+ FROM = 423,
208
+ FULL = 424,
209
+ FUNCTION = 425,
210
+ FUNCTIONS = 426,
211
+ GENERATED = 427,
212
+ GLOBAL = 428,
213
+ GRANT = 429,
214
+ GRANTED = 430,
215
+ GREATEST = 431,
216
+ GROUP_P = 432,
217
+ GROUPING = 433,
218
+ GROUPS = 434,
219
+ HANDLER = 435,
220
+ HAVING = 436,
221
+ HEADER_P = 437,
222
+ HOLD = 438,
223
+ HOUR_P = 439,
224
+ IDENTITY_P = 440,
225
+ IF_P = 441,
226
+ ILIKE = 442,
227
+ IMMEDIATE = 443,
228
+ IMMUTABLE = 444,
229
+ IMPLICIT_P = 445,
230
+ IMPORT_P = 446,
231
+ IN_P = 447,
232
+ INCLUDE = 448,
233
+ INCLUDING = 449,
234
+ INCREMENT = 450,
235
+ INDEX = 451,
236
+ INDEXES = 452,
237
+ INHERIT = 453,
238
+ INHERITS = 454,
239
+ INITIALLY = 455,
240
+ INLINE_P = 456,
241
+ INNER_P = 457,
242
+ INOUT = 458,
243
+ INPUT_P = 459,
244
+ INSENSITIVE = 460,
245
+ INSERT = 461,
246
+ INSTEAD = 462,
247
+ INT_P = 463,
248
+ INTEGER = 464,
249
+ INTERSECT = 465,
250
+ INTERVAL = 466,
251
+ INTO = 467,
252
+ INVOKER = 468,
253
+ IS = 469,
254
+ ISNULL = 470,
255
+ ISOLATION = 471,
256
+ JOIN = 472,
257
+ KEY = 473,
258
+ LABEL = 474,
259
+ LANGUAGE = 475,
260
+ LARGE_P = 476,
261
+ LAST_P = 477,
262
+ LATERAL_P = 478,
263
+ LEADING = 479,
264
+ LEAKPROOF = 480,
265
+ LEAST = 481,
266
+ LEFT = 482,
267
+ LEVEL = 483,
268
+ LIKE = 484,
269
+ LIMIT = 485,
270
+ LISTEN = 486,
271
+ LOAD = 487,
272
+ LOCAL = 488,
273
+ LOCALTIME = 489,
274
+ LOCALTIMESTAMP = 490,
275
+ LOCATION = 491,
276
+ LOCK_P = 492,
277
+ LOCKED = 493,
278
+ LOGGED = 494,
279
+ MAPPING = 495,
280
+ MATCH = 496,
281
+ MATERIALIZED = 497,
282
+ MAXVALUE = 498,
283
+ METHOD = 499,
284
+ MINUTE_P = 500,
285
+ MINVALUE = 501,
286
+ MODE = 502,
287
+ MONTH_P = 503,
288
+ MOVE = 504,
289
+ NAME_P = 505,
290
+ NAMES = 506,
291
+ NATIONAL = 507,
292
+ NATURAL = 508,
293
+ NCHAR = 509,
294
+ NEW = 510,
295
+ NEXT = 511,
296
+ NFC = 512,
297
+ NFD = 513,
298
+ NFKC = 514,
299
+ NFKD = 515,
300
+ NO = 516,
301
+ NONE = 517,
302
+ NORMALIZE = 518,
303
+ NORMALIZED = 519,
304
+ NOT = 520,
305
+ NOTHING = 521,
306
+ NOTIFY = 522,
307
+ NOTNULL = 523,
308
+ NOWAIT = 524,
309
+ NULL_P = 525,
310
+ NULLIF = 526,
311
+ NULLS_P = 527,
312
+ NUMERIC = 528,
313
+ OBJECT_P = 529,
314
+ OF = 530,
315
+ OFF = 531,
316
+ OFFSET = 532,
317
+ OIDS = 533,
318
+ OLD = 534,
319
+ ON = 535,
320
+ ONLY = 536,
321
+ OPERATOR = 537,
322
+ OPTION = 538,
323
+ OPTIONS = 539,
324
+ OR = 540,
325
+ ORDER = 541,
326
+ ORDINALITY = 542,
327
+ OTHERS = 543,
328
+ OUT_P = 544,
329
+ OUTER_P = 545,
330
+ OVER = 546,
331
+ OVERLAPS = 547,
332
+ OVERLAY = 548,
333
+ OVERRIDING = 549,
334
+ OWNED = 550,
335
+ OWNER = 551,
336
+ PARALLEL = 552,
337
+ PARSER = 553,
338
+ PARTIAL = 554,
339
+ PARTITION = 555,
340
+ PASSING = 556,
341
+ PASSWORD = 557,
342
+ PLACING = 558,
343
+ PLANS = 559,
344
+ POLICY = 560,
345
+ POSITION = 561,
346
+ PRECEDING = 562,
347
+ PRECISION = 563,
348
+ PRESERVE = 564,
349
+ PREPARE = 565,
350
+ PREPARED = 566,
351
+ PRIMARY = 567,
352
+ PRIOR = 568,
353
+ PRIVILEGES = 569,
354
+ PROCEDURAL = 570,
355
+ PROCEDURE = 571,
356
+ PROCEDURES = 572,
357
+ PROGRAM = 573,
358
+ PUBLICATION = 574,
359
+ QUOTE = 575,
360
+ RANGE = 576,
361
+ READ = 577,
362
+ REAL = 578,
363
+ REASSIGN = 579,
364
+ RECHECK = 580,
365
+ RECURSIVE = 581,
366
+ REF = 582,
367
+ REFERENCES = 583,
368
+ REFERENCING = 584,
369
+ REFRESH = 585,
370
+ REINDEX = 586,
371
+ RELATIVE_P = 587,
372
+ RELEASE = 588,
373
+ RENAME = 589,
374
+ REPEATABLE = 590,
375
+ REPLACE = 591,
376
+ REPLICA = 592,
377
+ RESET = 593,
378
+ RESTART = 594,
379
+ RESTRICT = 595,
380
+ RETURNING = 596,
381
+ RETURNS = 597,
382
+ REVOKE = 598,
383
+ RIGHT = 599,
384
+ ROLE = 600,
385
+ ROLLBACK = 601,
386
+ ROLLUP = 602,
387
+ ROUTINE = 603,
388
+ ROUTINES = 604,
389
+ ROW = 605,
390
+ ROWS = 606,
391
+ RULE = 607,
392
+ SAVEPOINT = 608,
393
+ SCHEMA = 609,
394
+ SCHEMAS = 610,
395
+ SCROLL = 611,
396
+ SEARCH = 612,
397
+ SECOND_P = 613,
398
+ SECURITY = 614,
399
+ SELECT = 615,
400
+ SEQUENCE = 616,
401
+ SEQUENCES = 617,
402
+ SERIALIZABLE = 618,
403
+ SERVER = 619,
404
+ SESSION = 620,
405
+ SESSION_USER = 621,
406
+ SET = 622,
407
+ SETS = 623,
408
+ SETOF = 624,
409
+ SHARE = 625,
410
+ SHOW = 626,
411
+ SIMILAR = 627,
412
+ SIMPLE = 628,
413
+ SKIP = 629,
414
+ SMALLINT = 630,
415
+ SNAPSHOT = 631,
416
+ SOME = 632,
417
+ SQL_P = 633,
418
+ STABLE = 634,
419
+ STANDALONE_P = 635,
420
+ START = 636,
421
+ STATEMENT = 637,
422
+ STATISTICS = 638,
423
+ STDIN = 639,
424
+ STDOUT = 640,
425
+ STORAGE = 641,
426
+ STORED = 642,
427
+ STRICT_P = 643,
428
+ STRIP_P = 644,
429
+ SUBSCRIPTION = 645,
430
+ SUBSTRING = 646,
431
+ SUPPORT = 647,
432
+ SYMMETRIC = 648,
433
+ SYSID = 649,
434
+ SYSTEM_P = 650,
435
+ TABLE = 651,
436
+ TABLES = 652,
437
+ TABLESAMPLE = 653,
438
+ TABLESPACE = 654,
439
+ TEMP = 655,
440
+ TEMPLATE = 656,
441
+ TEMPORARY = 657,
442
+ TEXT_P = 658,
443
+ THEN = 659,
444
+ TIES = 660,
445
+ TIME = 661,
446
+ TIMESTAMP = 662,
447
+ TO = 663,
448
+ TRAILING = 664,
449
+ TRANSACTION = 665,
450
+ TRANSFORM = 666,
451
+ TREAT = 667,
452
+ TRIGGER = 668,
453
+ TRIM = 669,
454
+ TRUE_P = 670,
455
+ TRUNCATE = 671,
456
+ TRUSTED = 672,
457
+ TYPE_P = 673,
458
+ TYPES_P = 674,
459
+ UESCAPE = 675,
460
+ UNBOUNDED = 676,
461
+ UNCOMMITTED = 677,
462
+ UNENCRYPTED = 678,
463
+ UNION = 679,
464
+ UNIQUE = 680,
465
+ UNKNOWN = 681,
466
+ UNLISTEN = 682,
467
+ UNLOGGED = 683,
468
+ UNTIL = 684,
469
+ UPDATE = 685,
470
+ USER = 686,
471
+ USING = 687,
472
+ VACUUM = 688,
473
+ VALID = 689,
474
+ VALIDATE = 690,
475
+ VALIDATOR = 691,
476
+ VALUE_P = 692,
477
+ VALUES = 693,
478
+ VARCHAR = 694,
479
+ VARIADIC = 695,
480
+ VARYING = 696,
481
+ VERBOSE = 697,
482
+ VERSION_P = 698,
483
+ VIEW = 699,
484
+ VIEWS = 700,
485
+ VOLATILE = 701,
486
+ WHEN = 702,
487
+ WHERE = 703,
488
+ WHITESPACE_P = 704,
489
+ WINDOW = 705,
490
+ WITH = 706,
491
+ WITHIN = 707,
492
+ WITHOUT = 708,
493
+ WORK = 709,
494
+ WRAPPER = 710,
495
+ WRITE = 711,
496
+ XML_P = 712,
497
+ XMLATTRIBUTES = 713,
498
+ XMLCONCAT = 714,
499
+ XMLELEMENT = 715,
500
+ XMLEXISTS = 716,
501
+ XMLFOREST = 717,
502
+ XMLNAMESPACES = 718,
503
+ XMLPARSE = 719,
504
+ XMLPI = 720,
505
+ XMLROOT = 721,
506
+ XMLSERIALIZE = 722,
507
+ XMLTABLE = 723,
508
+ YEAR_P = 724,
509
+ YES_P = 725,
510
+ ZONE = 726,
511
+ NOT_LA = 727,
512
+ NULLS_LA = 728,
513
+ WITH_LA = 729,
514
+ POSTFIXOP = 730,
515
+ UMINUS = 731
516
+ };
517
+ #endif
518
+ /* Tokens. */
519
+ #define IDENT 258
520
+ #define UIDENT 259
521
+ #define FCONST 260
522
+ #define SCONST 261
523
+ #define USCONST 262
524
+ #define BCONST 263
525
+ #define XCONST 264
526
+ #define Op 265
527
+ #define ICONST 266
528
+ #define PARAM 267
529
+ #define TYPECAST 268
530
+ #define DOT_DOT 269
531
+ #define COLON_EQUALS 270
532
+ #define EQUALS_GREATER 271
533
+ #define LESS_EQUALS 272
534
+ #define GREATER_EQUALS 273
535
+ #define NOT_EQUALS 274
536
+ #define SQL_COMMENT 275
537
+ #define C_COMMENT 276
538
+ #define ABORT_P 277
539
+ #define ABSOLUTE_P 278
540
+ #define ACCESS 279
541
+ #define ACTION 280
542
+ #define ADD_P 281
543
+ #define ADMIN 282
544
+ #define AFTER 283
545
+ #define AGGREGATE 284
546
+ #define ALL 285
547
+ #define ALSO 286
548
+ #define ALTER 287
549
+ #define ALWAYS 288
550
+ #define ANALYSE 289
551
+ #define ANALYZE 290
552
+ #define AND 291
553
+ #define ANY 292
554
+ #define ARRAY 293
555
+ #define AS 294
556
+ #define ASC 295
557
+ #define ASSERTION 296
558
+ #define ASSIGNMENT 297
559
+ #define ASYMMETRIC 298
560
+ #define AT 299
561
+ #define ATTACH 300
562
+ #define ATTRIBUTE 301
563
+ #define AUTHORIZATION 302
564
+ #define BACKWARD 303
565
+ #define BEFORE 304
566
+ #define BEGIN_P 305
567
+ #define BETWEEN 306
568
+ #define BIGINT 307
569
+ #define BINARY 308
570
+ #define BIT 309
571
+ #define BOOLEAN_P 310
572
+ #define BOTH 311
573
+ #define BY 312
574
+ #define CACHE 313
575
+ #define CALL 314
576
+ #define CALLED 315
577
+ #define CASCADE 316
578
+ #define CASCADED 317
579
+ #define CASE 318
580
+ #define CAST 319
581
+ #define CATALOG_P 320
582
+ #define CHAIN 321
583
+ #define CHAR_P 322
584
+ #define CHARACTER 323
585
+ #define CHARACTERISTICS 324
586
+ #define CHECK 325
587
+ #define CHECKPOINT 326
588
+ #define CLASS 327
589
+ #define CLOSE 328
590
+ #define CLUSTER 329
591
+ #define COALESCE 330
592
+ #define COLLATE 331
593
+ #define COLLATION 332
594
+ #define COLUMN 333
595
+ #define COLUMNS 334
596
+ #define COMMENT 335
597
+ #define COMMENTS 336
598
+ #define COMMIT 337
599
+ #define COMMITTED 338
600
+ #define CONCURRENTLY 339
601
+ #define CONFIGURATION 340
602
+ #define CONFLICT 341
603
+ #define CONNECTION 342
604
+ #define CONSTRAINT 343
605
+ #define CONSTRAINTS 344
606
+ #define CONTENT_P 345
607
+ #define CONTINUE_P 346
608
+ #define CONVERSION_P 347
609
+ #define COPY 348
610
+ #define COST 349
611
+ #define CREATE 350
612
+ #define CROSS 351
613
+ #define CSV 352
614
+ #define CUBE 353
615
+ #define CURRENT_P 354
616
+ #define CURRENT_CATALOG 355
617
+ #define CURRENT_DATE 356
618
+ #define CURRENT_ROLE 357
619
+ #define CURRENT_SCHEMA 358
620
+ #define CURRENT_TIME 359
621
+ #define CURRENT_TIMESTAMP 360
622
+ #define CURRENT_USER 361
623
+ #define CURSOR 362
624
+ #define CYCLE 363
625
+ #define DATA_P 364
626
+ #define DATABASE 365
627
+ #define DAY_P 366
628
+ #define DEALLOCATE 367
629
+ #define DEC 368
630
+ #define DECIMAL_P 369
631
+ #define DECLARE 370
632
+ #define DEFAULT 371
633
+ #define DEFAULTS 372
634
+ #define DEFERRABLE 373
635
+ #define DEFERRED 374
636
+ #define DEFINER 375
637
+ #define DELETE_P 376
638
+ #define DELIMITER 377
639
+ #define DELIMITERS 378
640
+ #define DEPENDS 379
641
+ #define DESC 380
642
+ #define DETACH 381
643
+ #define DICTIONARY 382
644
+ #define DISABLE_P 383
645
+ #define DISCARD 384
646
+ #define DISTINCT 385
647
+ #define DO 386
648
+ #define DOCUMENT_P 387
649
+ #define DOMAIN_P 388
650
+ #define DOUBLE_P 389
651
+ #define DROP 390
652
+ #define EACH 391
653
+ #define ELSE 392
654
+ #define ENABLE_P 393
655
+ #define ENCODING 394
656
+ #define ENCRYPTED 395
657
+ #define END_P 396
658
+ #define ENUM_P 397
659
+ #define ESCAPE 398
660
+ #define EVENT 399
661
+ #define EXCEPT 400
662
+ #define EXCLUDE 401
663
+ #define EXCLUDING 402
664
+ #define EXCLUSIVE 403
665
+ #define EXECUTE 404
666
+ #define EXISTS 405
667
+ #define EXPLAIN 406
668
+ #define EXPRESSION 407
669
+ #define EXTENSION 408
670
+ #define EXTERNAL 409
671
+ #define EXTRACT 410
672
+ #define FALSE_P 411
673
+ #define FAMILY 412
674
+ #define FETCH 413
675
+ #define FILTER 414
676
+ #define FIRST_P 415
677
+ #define FLOAT_P 416
678
+ #define FOLLOWING 417
679
+ #define FOR 418
680
+ #define FORCE 419
681
+ #define FOREIGN 420
682
+ #define FORWARD 421
683
+ #define FREEZE 422
684
+ #define FROM 423
685
+ #define FULL 424
686
+ #define FUNCTION 425
687
+ #define FUNCTIONS 426
688
+ #define GENERATED 427
689
+ #define GLOBAL 428
690
+ #define GRANT 429
691
+ #define GRANTED 430
692
+ #define GREATEST 431
693
+ #define GROUP_P 432
694
+ #define GROUPING 433
695
+ #define GROUPS 434
696
+ #define HANDLER 435
697
+ #define HAVING 436
698
+ #define HEADER_P 437
699
+ #define HOLD 438
700
+ #define HOUR_P 439
701
+ #define IDENTITY_P 440
702
+ #define IF_P 441
703
+ #define ILIKE 442
704
+ #define IMMEDIATE 443
705
+ #define IMMUTABLE 444
706
+ #define IMPLICIT_P 445
707
+ #define IMPORT_P 446
708
+ #define IN_P 447
709
+ #define INCLUDE 448
710
+ #define INCLUDING 449
711
+ #define INCREMENT 450
712
+ #define INDEX 451
713
+ #define INDEXES 452
714
+ #define INHERIT 453
715
+ #define INHERITS 454
716
+ #define INITIALLY 455
717
+ #define INLINE_P 456
718
+ #define INNER_P 457
719
+ #define INOUT 458
720
+ #define INPUT_P 459
721
+ #define INSENSITIVE 460
722
+ #define INSERT 461
723
+ #define INSTEAD 462
724
+ #define INT_P 463
725
+ #define INTEGER 464
726
+ #define INTERSECT 465
727
+ #define INTERVAL 466
728
+ #define INTO 467
729
+ #define INVOKER 468
730
+ #define IS 469
731
+ #define ISNULL 470
732
+ #define ISOLATION 471
733
+ #define JOIN 472
734
+ #define KEY 473
735
+ #define LABEL 474
736
+ #define LANGUAGE 475
737
+ #define LARGE_P 476
738
+ #define LAST_P 477
739
+ #define LATERAL_P 478
740
+ #define LEADING 479
741
+ #define LEAKPROOF 480
742
+ #define LEAST 481
743
+ #define LEFT 482
744
+ #define LEVEL 483
745
+ #define LIKE 484
746
+ #define LIMIT 485
747
+ #define LISTEN 486
748
+ #define LOAD 487
749
+ #define LOCAL 488
750
+ #define LOCALTIME 489
751
+ #define LOCALTIMESTAMP 490
752
+ #define LOCATION 491
753
+ #define LOCK_P 492
754
+ #define LOCKED 493
755
+ #define LOGGED 494
756
+ #define MAPPING 495
757
+ #define MATCH 496
758
+ #define MATERIALIZED 497
759
+ #define MAXVALUE 498
760
+ #define METHOD 499
761
+ #define MINUTE_P 500
762
+ #define MINVALUE 501
763
+ #define MODE 502
764
+ #define MONTH_P 503
765
+ #define MOVE 504
766
+ #define NAME_P 505
767
+ #define NAMES 506
768
+ #define NATIONAL 507
769
+ #define NATURAL 508
770
+ #define NCHAR 509
771
+ #define NEW 510
772
+ #define NEXT 511
773
+ #define NFC 512
774
+ #define NFD 513
775
+ #define NFKC 514
776
+ #define NFKD 515
777
+ #define NO 516
778
+ #define NONE 517
779
+ #define NORMALIZE 518
780
+ #define NORMALIZED 519
781
+ #define NOT 520
782
+ #define NOTHING 521
783
+ #define NOTIFY 522
784
+ #define NOTNULL 523
785
+ #define NOWAIT 524
786
+ #define NULL_P 525
787
+ #define NULLIF 526
788
+ #define NULLS_P 527
789
+ #define NUMERIC 528
790
+ #define OBJECT_P 529
791
+ #define OF 530
792
+ #define OFF 531
793
+ #define OFFSET 532
794
+ #define OIDS 533
795
+ #define OLD 534
796
+ #define ON 535
797
+ #define ONLY 536
798
+ #define OPERATOR 537
799
+ #define OPTION 538
800
+ #define OPTIONS 539
801
+ #define OR 540
802
+ #define ORDER 541
803
+ #define ORDINALITY 542
804
+ #define OTHERS 543
805
+ #define OUT_P 544
806
+ #define OUTER_P 545
807
+ #define OVER 546
808
+ #define OVERLAPS 547
809
+ #define OVERLAY 548
810
+ #define OVERRIDING 549
811
+ #define OWNED 550
812
+ #define OWNER 551
813
+ #define PARALLEL 552
814
+ #define PARSER 553
815
+ #define PARTIAL 554
816
+ #define PARTITION 555
817
+ #define PASSING 556
818
+ #define PASSWORD 557
819
+ #define PLACING 558
820
+ #define PLANS 559
821
+ #define POLICY 560
822
+ #define POSITION 561
823
+ #define PRECEDING 562
824
+ #define PRECISION 563
825
+ #define PRESERVE 564
826
+ #define PREPARE 565
827
+ #define PREPARED 566
828
+ #define PRIMARY 567
829
+ #define PRIOR 568
830
+ #define PRIVILEGES 569
831
+ #define PROCEDURAL 570
832
+ #define PROCEDURE 571
833
+ #define PROCEDURES 572
834
+ #define PROGRAM 573
835
+ #define PUBLICATION 574
836
+ #define QUOTE 575
837
+ #define RANGE 576
838
+ #define READ 577
839
+ #define REAL 578
840
+ #define REASSIGN 579
841
+ #define RECHECK 580
842
+ #define RECURSIVE 581
843
+ #define REF 582
844
+ #define REFERENCES 583
845
+ #define REFERENCING 584
846
+ #define REFRESH 585
847
+ #define REINDEX 586
848
+ #define RELATIVE_P 587
849
+ #define RELEASE 588
850
+ #define RENAME 589
851
+ #define REPEATABLE 590
852
+ #define REPLACE 591
853
+ #define REPLICA 592
854
+ #define RESET 593
855
+ #define RESTART 594
856
+ #define RESTRICT 595
857
+ #define RETURNING 596
858
+ #define RETURNS 597
859
+ #define REVOKE 598
860
+ #define RIGHT 599
861
+ #define ROLE 600
862
+ #define ROLLBACK 601
863
+ #define ROLLUP 602
864
+ #define ROUTINE 603
865
+ #define ROUTINES 604
866
+ #define ROW 605
867
+ #define ROWS 606
868
+ #define RULE 607
869
+ #define SAVEPOINT 608
870
+ #define SCHEMA 609
871
+ #define SCHEMAS 610
872
+ #define SCROLL 611
873
+ #define SEARCH 612
874
+ #define SECOND_P 613
875
+ #define SECURITY 614
876
+ #define SELECT 615
877
+ #define SEQUENCE 616
878
+ #define SEQUENCES 617
879
+ #define SERIALIZABLE 618
880
+ #define SERVER 619
881
+ #define SESSION 620
882
+ #define SESSION_USER 621
883
+ #define SET 622
884
+ #define SETS 623
885
+ #define SETOF 624
886
+ #define SHARE 625
887
+ #define SHOW 626
888
+ #define SIMILAR 627
889
+ #define SIMPLE 628
890
+ #define SKIP 629
891
+ #define SMALLINT 630
892
+ #define SNAPSHOT 631
893
+ #define SOME 632
894
+ #define SQL_P 633
895
+ #define STABLE 634
896
+ #define STANDALONE_P 635
897
+ #define START 636
898
+ #define STATEMENT 637
899
+ #define STATISTICS 638
900
+ #define STDIN 639
901
+ #define STDOUT 640
902
+ #define STORAGE 641
903
+ #define STORED 642
904
+ #define STRICT_P 643
905
+ #define STRIP_P 644
906
+ #define SUBSCRIPTION 645
907
+ #define SUBSTRING 646
908
+ #define SUPPORT 647
909
+ #define SYMMETRIC 648
910
+ #define SYSID 649
911
+ #define SYSTEM_P 650
912
+ #define TABLE 651
913
+ #define TABLES 652
914
+ #define TABLESAMPLE 653
915
+ #define TABLESPACE 654
916
+ #define TEMP 655
917
+ #define TEMPLATE 656
918
+ #define TEMPORARY 657
919
+ #define TEXT_P 658
920
+ #define THEN 659
921
+ #define TIES 660
922
+ #define TIME 661
923
+ #define TIMESTAMP 662
924
+ #define TO 663
925
+ #define TRAILING 664
926
+ #define TRANSACTION 665
927
+ #define TRANSFORM 666
928
+ #define TREAT 667
929
+ #define TRIGGER 668
930
+ #define TRIM 669
931
+ #define TRUE_P 670
932
+ #define TRUNCATE 671
933
+ #define TRUSTED 672
934
+ #define TYPE_P 673
935
+ #define TYPES_P 674
936
+ #define UESCAPE 675
937
+ #define UNBOUNDED 676
938
+ #define UNCOMMITTED 677
939
+ #define UNENCRYPTED 678
940
+ #define UNION 679
941
+ #define UNIQUE 680
942
+ #define UNKNOWN 681
943
+ #define UNLISTEN 682
944
+ #define UNLOGGED 683
945
+ #define UNTIL 684
946
+ #define UPDATE 685
947
+ #define USER 686
948
+ #define USING 687
949
+ #define VACUUM 688
950
+ #define VALID 689
951
+ #define VALIDATE 690
952
+ #define VALIDATOR 691
953
+ #define VALUE_P 692
954
+ #define VALUES 693
955
+ #define VARCHAR 694
956
+ #define VARIADIC 695
957
+ #define VARYING 696
958
+ #define VERBOSE 697
959
+ #define VERSION_P 698
960
+ #define VIEW 699
961
+ #define VIEWS 700
962
+ #define VOLATILE 701
963
+ #define WHEN 702
964
+ #define WHERE 703
965
+ #define WHITESPACE_P 704
966
+ #define WINDOW 705
967
+ #define WITH 706
968
+ #define WITHIN 707
969
+ #define WITHOUT 708
970
+ #define WORK 709
971
+ #define WRAPPER 710
972
+ #define WRITE 711
973
+ #define XML_P 712
974
+ #define XMLATTRIBUTES 713
975
+ #define XMLCONCAT 714
976
+ #define XMLELEMENT 715
977
+ #define XMLEXISTS 716
978
+ #define XMLFOREST 717
979
+ #define XMLNAMESPACES 718
980
+ #define XMLPARSE 719
981
+ #define XMLPI 720
982
+ #define XMLROOT 721
983
+ #define XMLSERIALIZE 722
984
+ #define XMLTABLE 723
985
+ #define YEAR_P 724
986
+ #define YES_P 725
987
+ #define ZONE 726
988
+ #define NOT_LA 727
989
+ #define NULLS_LA 728
990
+ #define WITH_LA 729
991
+ #define POSTFIXOP 730
992
+ #define UMINUS 731
993
+
994
+
995
+
996
+
997
+ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
998
+ typedef union YYSTYPE
999
+ #line 214 "gram.y"
1000
+ {
1001
+ core_YYSTYPE core_yystype;
1002
+ /* these fields must match core_YYSTYPE: */
1003
+ int ival;
1004
+ char *str;
1005
+ const char *keyword;
1006
+
1007
+ char chr;
1008
+ bool boolean;
1009
+ JoinType jtype;
1010
+ DropBehavior dbehavior;
1011
+ OnCommitAction oncommit;
1012
+ List *list;
1013
+ Node *node;
1014
+ Value *value;
1015
+ ObjectType objtype;
1016
+ TypeName *typnam;
1017
+ FunctionParameter *fun_param;
1018
+ FunctionParameterMode fun_param_mode;
1019
+ ObjectWithArgs *objwithargs;
1020
+ DefElem *defelt;
1021
+ SortBy *sortby;
1022
+ WindowDef *windef;
1023
+ JoinExpr *jexpr;
1024
+ IndexElem *ielem;
1025
+ Alias *alias;
1026
+ RangeVar *range;
1027
+ IntoClause *into;
1028
+ WithClause *with;
1029
+ InferClause *infer;
1030
+ OnConflictClause *onconflict;
1031
+ A_Indices *aind;
1032
+ ResTarget *target;
1033
+ struct PrivTarget *privtarget;
1034
+ AccessPriv *accesspriv;
1035
+ struct ImportQual *importqual;
1036
+ InsertStmt *istmt;
1037
+ VariableSetStmt *vsetstmt;
1038
+ PartitionElem *partelem;
1039
+ PartitionSpec *partspec;
1040
+ PartitionBoundSpec *partboundspec;
1041
+ RoleSpec *rolespec;
1042
+ struct SelectLimit *selectlimit;
1043
+ }
1044
+ /* Line 1529 of yacc.c. */
1045
+ #line 1046 "gram.h"
1046
+ YYSTYPE;
1047
+ # define yystype YYSTYPE /* obsolescent; will be withdrawn */
1048
+ # define YYSTYPE_IS_DECLARED 1
1049
+ # define YYSTYPE_IS_TRIVIAL 1
1050
+ #endif
1051
+
1052
+
1053
+
1054
+ #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
1055
+ typedef struct YYLTYPE
1056
+ {
1057
+ int first_line;
1058
+ int first_column;
1059
+ int last_line;
1060
+ int last_column;
1061
+ } YYLTYPE;
1062
+ # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
1063
+ # define YYLTYPE_IS_DECLARED 1
1064
+ # define YYLTYPE_IS_TRIVIAL 1
1065
+ #endif
1066
+
1067
+