pg_query 2.2.0 → 6.1.0

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 (895) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +86 -0
  3. data/README.md +57 -31
  4. data/Rakefile +5 -6
  5. data/ext/pg_query/ext_symbols_freebsd.sym +1 -0
  6. data/ext/pg_query/ext_symbols_freebsd_with_ruby_abi_version.sym +2 -0
  7. data/ext/pg_query/ext_symbols_openbsd.sym +1 -0
  8. data/ext/pg_query/ext_symbols_openbsd_with_ruby_abi_version.sym +2 -0
  9. data/ext/pg_query/ext_symbols_with_ruby_abi_version.sym +2 -0
  10. data/ext/pg_query/extconf.rb +33 -9
  11. data/ext/pg_query/include/pg_query.h +30 -4
  12. data/ext/pg_query/include/pg_query_enum_defs.c +839 -290
  13. data/ext/pg_query/include/pg_query_fingerprint_conds.c +638 -481
  14. data/ext/pg_query/include/pg_query_fingerprint_defs.c +6786 -4193
  15. data/ext/pg_query/include/pg_query_outfuncs_conds.c +450 -330
  16. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1489 -1044
  17. data/ext/pg_query/include/pg_query_readfuncs_conds.c +157 -118
  18. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1933 -1410
  19. data/ext/pg_query/include/postgres/access/amapi.h +303 -0
  20. data/ext/pg_query/include/postgres/access/attmap.h +54 -0
  21. data/ext/pg_query/include/postgres/access/attnum.h +64 -0
  22. data/ext/pg_query/include/postgres/access/brin_internal.h +116 -0
  23. data/ext/pg_query/include/postgres/access/brin_tuple.h +112 -0
  24. data/ext/pg_query/include/postgres/access/clog.h +62 -0
  25. data/ext/pg_query/include/postgres/access/commit_ts.h +73 -0
  26. data/ext/pg_query/include/postgres/access/detoast.h +82 -0
  27. data/ext/pg_query/include/postgres/access/genam.h +246 -0
  28. data/ext/pg_query/include/postgres/access/gin.h +91 -0
  29. data/ext/pg_query/include/postgres/access/htup.h +89 -0
  30. data/ext/pg_query/include/postgres/access/htup_details.h +811 -0
  31. data/ext/pg_query/include/postgres/access/itup.h +170 -0
  32. data/ext/pg_query/include/postgres/access/parallel.h +81 -0
  33. data/ext/pg_query/include/postgres/access/printtup.h +35 -0
  34. data/ext/pg_query/include/postgres/access/relation.h +28 -0
  35. data/ext/pg_query/include/postgres/access/relscan.h +191 -0
  36. data/ext/pg_query/include/postgres/access/rmgr.h +62 -0
  37. data/ext/pg_query/include/postgres/access/rmgrlist.h +49 -0
  38. data/ext/pg_query/include/postgres/access/sdir.h +67 -0
  39. data/ext/pg_query/include/postgres/access/skey.h +151 -0
  40. data/ext/pg_query/include/postgres/access/slru.h +218 -0
  41. data/ext/pg_query/include/postgres/access/stratnum.h +85 -0
  42. data/ext/pg_query/include/postgres/access/sysattr.h +29 -0
  43. data/ext/pg_query/include/postgres/access/table.h +28 -0
  44. data/ext/pg_query/include/postgres/access/tableam.h +2110 -0
  45. data/ext/pg_query/include/postgres/access/tidstore.h +50 -0
  46. data/ext/pg_query/include/postgres/access/toast_compression.h +73 -0
  47. data/ext/pg_query/include/postgres/access/transam.h +418 -0
  48. data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
  49. data/ext/pg_query/include/postgres/access/tupconvert.h +54 -0
  50. data/ext/pg_query/include/postgres/access/tupdesc.h +154 -0
  51. data/ext/pg_query/include/postgres/access/tupmacs.h +207 -0
  52. data/ext/pg_query/include/postgres/access/twophase.h +65 -0
  53. data/ext/pg_query/include/postgres/access/xact.h +530 -0
  54. data/ext/pg_query/include/postgres/access/xlog.h +310 -0
  55. data/ext/pg_query/include/postgres/access/xlog_internal.h +405 -0
  56. data/ext/pg_query/include/postgres/access/xlogbackup.h +43 -0
  57. data/ext/pg_query/include/postgres/access/xlogdefs.h +82 -0
  58. data/ext/pg_query/include/postgres/access/xlogprefetcher.h +55 -0
  59. data/ext/pg_query/include/postgres/access/xlogreader.h +444 -0
  60. data/ext/pg_query/include/postgres/access/xlogrecord.h +248 -0
  61. data/ext/pg_query/include/postgres/access/xlogrecovery.h +158 -0
  62. data/ext/pg_query/include/postgres/archive/archive_module.h +67 -0
  63. data/ext/pg_query/include/postgres/c.h +1374 -0
  64. data/ext/pg_query/include/postgres/catalog/catalog.h +47 -0
  65. data/ext/pg_query/include/postgres/catalog/catversion.h +62 -0
  66. data/ext/pg_query/include/postgres/catalog/dependency.h +228 -0
  67. data/ext/pg_query/include/postgres/catalog/genbki.h +149 -0
  68. data/ext/pg_query/include/postgres/catalog/index.h +218 -0
  69. data/ext/pg_query/include/postgres/catalog/indexing.h +54 -0
  70. data/ext/pg_query/include/postgres/catalog/namespace.h +189 -0
  71. data/ext/pg_query/include/postgres/catalog/objectaccess.h +267 -0
  72. data/ext/pg_query/include/postgres/catalog/objectaddress.h +93 -0
  73. data/ext/pg_query/include/postgres/catalog/pg_aggregate.h +182 -0
  74. data/ext/pg_query/include/postgres/catalog/pg_aggregate_d.h +78 -0
  75. data/ext/pg_query/include/postgres/catalog/pg_am.h +66 -0
  76. data/ext/pg_query/include/postgres/catalog/pg_am_d.h +47 -0
  77. data/ext/pg_query/include/postgres/catalog/pg_attribute.h +240 -0
  78. data/ext/pg_query/include/postgres/catalog/pg_attribute_d.h +62 -0
  79. data/ext/pg_query/include/postgres/catalog/pg_authid.h +66 -0
  80. data/ext/pg_query/include/postgres/catalog/pg_authid_d.h +60 -0
  81. data/ext/pg_query/include/postgres/catalog/pg_class.h +235 -0
  82. data/ext/pg_query/include/postgres/catalog/pg_class_d.h +134 -0
  83. data/ext/pg_query/include/postgres/catalog/pg_collation.h +106 -0
  84. data/ext/pg_query/include/postgres/catalog/pg_collation_d.h +66 -0
  85. data/ext/pg_query/include/postgres/catalog/pg_constraint.h +278 -0
  86. data/ext/pg_query/include/postgres/catalog/pg_constraint_d.h +74 -0
  87. data/ext/pg_query/include/postgres/catalog/pg_control.h +260 -0
  88. data/ext/pg_query/include/postgres/catalog/pg_conversion.h +79 -0
  89. data/ext/pg_query/include/postgres/catalog/pg_conversion_d.h +38 -0
  90. data/ext/pg_query/include/postgres/catalog/pg_database.h +129 -0
  91. data/ext/pg_query/include/postgres/catalog/pg_database_d.h +53 -0
  92. data/ext/pg_query/include/postgres/catalog/pg_depend.h +77 -0
  93. data/ext/pg_query/include/postgres/catalog/pg_depend_d.h +36 -0
  94. data/ext/pg_query/include/postgres/catalog/pg_event_trigger.h +60 -0
  95. data/ext/pg_query/include/postgres/catalog/pg_event_trigger_d.h +36 -0
  96. data/ext/pg_query/include/postgres/catalog/pg_index.h +92 -0
  97. data/ext/pg_query/include/postgres/catalog/pg_index_d.h +59 -0
  98. data/ext/pg_query/include/postgres/catalog/pg_language.h +75 -0
  99. data/ext/pg_query/include/postgres/catalog/pg_language_d.h +41 -0
  100. data/ext/pg_query/include/postgres/catalog/pg_namespace.h +67 -0
  101. data/ext/pg_query/include/postgres/catalog/pg_namespace_d.h +36 -0
  102. data/ext/pg_query/include/postgres/catalog/pg_opclass.h +91 -0
  103. data/ext/pg_query/include/postgres/catalog/pg_opclass_d.h +51 -0
  104. data/ext/pg_query/include/postgres/catalog/pg_operator.h +124 -0
  105. data/ext/pg_query/include/postgres/catalog/pg_operator_d.h +142 -0
  106. data/ext/pg_query/include/postgres/catalog/pg_opfamily.h +67 -0
  107. data/ext/pg_query/include/postgres/catalog/pg_opfamily_d.h +51 -0
  108. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table.h +76 -0
  109. data/ext/pg_query/include/postgres/catalog/pg_partitioned_table_d.h +36 -0
  110. data/ext/pg_query/include/postgres/catalog/pg_proc.h +223 -0
  111. data/ext/pg_query/include/postgres/catalog/pg_proc_d.h +101 -0
  112. data/ext/pg_query/include/postgres/catalog/pg_publication.h +161 -0
  113. data/ext/pg_query/include/postgres/catalog/pg_publication_d.h +38 -0
  114. data/ext/pg_query/include/postgres/catalog/pg_replication_origin.h +65 -0
  115. data/ext/pg_query/include/postgres/catalog/pg_replication_origin_d.h +33 -0
  116. data/ext/pg_query/include/postgres/catalog/pg_statistic.h +288 -0
  117. data/ext/pg_query/include/postgres/catalog/pg_statistic_d.h +199 -0
  118. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext.h +91 -0
  119. data/ext/pg_query/include/postgres/catalog/pg_statistic_ext_d.h +45 -0
  120. data/ext/pg_query/include/postgres/catalog/pg_transform.h +51 -0
  121. data/ext/pg_query/include/postgres/catalog/pg_transform_d.h +34 -0
  122. data/ext/pg_query/include/postgres/catalog/pg_trigger.h +153 -0
  123. data/ext/pg_query/include/postgres/catalog/pg_trigger_d.h +109 -0
  124. data/ext/pg_query/include/postgres/catalog/pg_ts_config.h +56 -0
  125. data/ext/pg_query/include/postgres/catalog/pg_ts_config_d.h +34 -0
  126. data/ext/pg_query/include/postgres/catalog/pg_ts_dict.h +62 -0
  127. data/ext/pg_query/include/postgres/catalog/pg_ts_dict_d.h +35 -0
  128. data/ext/pg_query/include/postgres/catalog/pg_ts_parser.h +63 -0
  129. data/ext/pg_query/include/postgres/catalog/pg_ts_parser_d.h +37 -0
  130. data/ext/pg_query/include/postgres/catalog/pg_ts_template.h +54 -0
  131. data/ext/pg_query/include/postgres/catalog/pg_ts_template_d.h +34 -0
  132. data/ext/pg_query/include/postgres/catalog/pg_type.h +407 -0
  133. data/ext/pg_query/include/postgres/catalog/pg_type_d.h +324 -0
  134. data/ext/pg_query/include/postgres/catalog/storage.h +50 -0
  135. data/ext/pg_query/include/postgres/catalog/syscache_ids.h +104 -0
  136. data/ext/pg_query/include/postgres/commands/async.h +49 -0
  137. data/ext/pg_query/include/postgres/commands/dbcommands.h +37 -0
  138. data/ext/pg_query/include/postgres/commands/defrem.h +161 -0
  139. data/ext/pg_query/include/postgres/commands/event_trigger.h +97 -0
  140. data/ext/pg_query/include/postgres/commands/explain.h +145 -0
  141. data/ext/pg_query/include/postgres/commands/prepare.h +61 -0
  142. data/ext/pg_query/include/postgres/commands/tablespace.h +69 -0
  143. data/ext/pg_query/include/postgres/commands/trigger.h +288 -0
  144. data/ext/pg_query/include/postgres/commands/user.h +43 -0
  145. data/ext/pg_query/include/postgres/commands/vacuum.h +388 -0
  146. data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
  147. data/ext/pg_query/include/postgres/common/file_perm.h +56 -0
  148. data/ext/pg_query/include/postgres/common/file_utils.h +65 -0
  149. data/ext/pg_query/include/postgres/common/hashfn.h +119 -0
  150. data/ext/pg_query/include/postgres/common/hashfn_unstable.h +407 -0
  151. data/ext/pg_query/include/postgres/common/int.h +512 -0
  152. data/ext/pg_query/include/postgres/common/keywords.h +29 -0
  153. data/ext/pg_query/include/postgres/common/kwlookup.h +44 -0
  154. data/ext/pg_query/include/postgres/common/pg_prng.h +62 -0
  155. data/ext/pg_query/include/postgres/common/relpath.h +97 -0
  156. data/ext/pg_query/include/postgres/common/scram-common.h +70 -0
  157. data/ext/pg_query/include/postgres/common/sha2.h +32 -0
  158. data/ext/pg_query/include/postgres/common/string.h +44 -0
  159. data/ext/pg_query/include/postgres/common/unicode_east_asian_fw_table.h +124 -0
  160. data/ext/pg_query/include/postgres/common/unicode_nonspacing_table.h +326 -0
  161. data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5261 -0
  162. data/ext/pg_query/include/postgres/copyfuncs.switch.c +989 -0
  163. data/ext/pg_query/include/postgres/datatype/timestamp.h +269 -0
  164. data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3310 -0
  165. data/ext/pg_query/include/postgres/equalfuncs.switch.c +836 -0
  166. data/ext/pg_query/include/postgres/executor/execdesc.h +70 -0
  167. data/ext/pg_query/include/postgres/executor/executor.h +681 -0
  168. data/ext/pg_query/include/postgres/executor/functions.h +56 -0
  169. data/ext/pg_query/include/postgres/executor/instrument.h +120 -0
  170. data/ext/pg_query/include/postgres/executor/spi.h +207 -0
  171. data/ext/pg_query/include/postgres/executor/tablefunc.h +67 -0
  172. data/ext/pg_query/include/postgres/executor/tuptable.h +523 -0
  173. data/ext/pg_query/include/postgres/fmgr.h +800 -0
  174. data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
  175. data/ext/pg_query/include/postgres/funcapi.h +360 -0
  176. data/ext/pg_query/include/postgres/gram.h +1168 -0
  177. data/ext/pg_query/include/postgres/gramparse.h +75 -0
  178. data/ext/pg_query/include/postgres/jit/jit.h +106 -0
  179. data/ext/pg_query/include/postgres/kwlist_d.h +1164 -0
  180. data/ext/pg_query/include/postgres/lib/dshash.h +130 -0
  181. data/ext/pg_query/include/postgres/lib/ilist.h +1159 -0
  182. data/ext/pg_query/include/postgres/lib/pairingheap.h +102 -0
  183. data/ext/pg_query/include/postgres/lib/simplehash.h +1206 -0
  184. data/ext/pg_query/include/postgres/lib/sort_template.h +445 -0
  185. data/ext/pg_query/include/postgres/lib/stringinfo.h +243 -0
  186. data/ext/pg_query/include/postgres/libpq/auth.h +37 -0
  187. data/ext/pg_query/include/postgres/libpq/crypt.h +47 -0
  188. data/ext/pg_query/include/postgres/libpq/hba.h +186 -0
  189. data/ext/pg_query/include/postgres/libpq/libpq-be.h +361 -0
  190. data/ext/pg_query/include/postgres/libpq/libpq.h +143 -0
  191. data/ext/pg_query/include/postgres/libpq/pqcomm.h +169 -0
  192. data/ext/pg_query/include/postgres/libpq/pqformat.h +209 -0
  193. data/ext/pg_query/include/postgres/libpq/pqsignal.h +54 -0
  194. data/ext/pg_query/include/postgres/libpq/protocol.h +89 -0
  195. data/ext/pg_query/include/postgres/libpq/sasl.h +136 -0
  196. data/ext/pg_query/include/postgres/libpq/scram.h +37 -0
  197. data/ext/pg_query/include/postgres/mb/pg_wchar.h +793 -0
  198. data/ext/pg_query/include/postgres/mb/stringinfo_mb.h +24 -0
  199. data/ext/pg_query/include/postgres/miscadmin.h +527 -0
  200. data/ext/pg_query/include/postgres/nodes/bitmapset.h +140 -0
  201. data/ext/pg_query/include/postgres/nodes/execnodes.h +2855 -0
  202. data/ext/pg_query/include/postgres/nodes/extensible.h +164 -0
  203. data/ext/pg_query/include/postgres/nodes/lockoptions.h +61 -0
  204. data/ext/pg_query/include/postgres/nodes/makefuncs.h +127 -0
  205. data/ext/pg_query/include/postgres/nodes/memnodes.h +152 -0
  206. data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
  207. data/ext/pg_query/include/postgres/nodes/nodeFuncs.h +222 -0
  208. data/ext/pg_query/include/postgres/nodes/nodes.h +435 -0
  209. data/ext/pg_query/include/postgres/nodes/nodetags.h +491 -0
  210. data/ext/pg_query/include/postgres/nodes/params.h +170 -0
  211. data/ext/pg_query/include/postgres/nodes/parsenodes.h +4233 -0
  212. data/ext/pg_query/include/postgres/nodes/pathnodes.h +3438 -0
  213. data/ext/pg_query/include/postgres/nodes/pg_list.h +686 -0
  214. data/ext/pg_query/include/postgres/nodes/plannodes.h +1593 -0
  215. data/ext/pg_query/include/postgres/nodes/primnodes.h +2339 -0
  216. data/ext/pg_query/include/postgres/nodes/print.h +34 -0
  217. data/ext/pg_query/include/postgres/nodes/queryjumble.h +86 -0
  218. data/ext/pg_query/include/postgres/nodes/replnodes.h +132 -0
  219. data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
  220. data/ext/pg_query/include/postgres/nodes/tidbitmap.h +75 -0
  221. data/ext/pg_query/include/postgres/nodes/value.h +90 -0
  222. data/ext/pg_query/include/postgres/optimizer/cost.h +216 -0
  223. data/ext/pg_query/include/postgres/optimizer/geqo.h +90 -0
  224. data/ext/pg_query/include/postgres/optimizer/geqo_gene.h +45 -0
  225. data/ext/pg_query/include/postgres/optimizer/optimizer.h +205 -0
  226. data/ext/pg_query/include/postgres/optimizer/paths.h +271 -0
  227. data/ext/pg_query/include/postgres/optimizer/planmain.h +123 -0
  228. data/ext/pg_query/include/postgres/parser/analyze.h +66 -0
  229. data/ext/pg_query/include/postgres/parser/kwlist.h +518 -0
  230. data/ext/pg_query/include/postgres/parser/parse_agg.h +65 -0
  231. data/ext/pg_query/include/postgres/parser/parse_coerce.h +105 -0
  232. data/ext/pg_query/include/postgres/parser/parse_expr.h +25 -0
  233. data/ext/pg_query/include/postgres/parser/parse_func.h +74 -0
  234. data/ext/pg_query/include/postgres/parser/parse_node.h +358 -0
  235. data/ext/pg_query/include/postgres/parser/parse_oper.h +68 -0
  236. data/ext/pg_query/include/postgres/parser/parse_relation.h +129 -0
  237. data/ext/pg_query/include/postgres/parser/parse_type.h +61 -0
  238. data/ext/pg_query/include/postgres/parser/parser.h +68 -0
  239. data/ext/pg_query/include/postgres/parser/parsetree.h +61 -0
  240. data/ext/pg_query/include/postgres/parser/scanner.h +152 -0
  241. data/ext/pg_query/include/postgres/parser/scansup.h +27 -0
  242. data/ext/pg_query/include/postgres/partitioning/partdefs.h +26 -0
  243. data/ext/pg_query/include/postgres/pg_config.h +985 -0
  244. data/ext/pg_query/include/postgres/pg_config_manual.h +385 -0
  245. data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
  246. data/ext/pg_query/include/postgres/pg_getopt.h +56 -0
  247. data/ext/pg_query/include/postgres/pg_trace.h +17 -0
  248. data/ext/pg_query/include/postgres/pgstat.h +780 -0
  249. data/ext/pg_query/include/postgres/pgtime.h +94 -0
  250. data/ext/pg_query/include/postgres/pl_gram.h +385 -0
  251. data/ext/pg_query/include/postgres/pl_reserved_kwlist.h +52 -0
  252. data/ext/pg_query/include/postgres/pl_reserved_kwlist_d.h +114 -0
  253. data/ext/pg_query/include/postgres/pl_unreserved_kwlist.h +112 -0
  254. data/ext/pg_query/include/postgres/pl_unreserved_kwlist_d.h +246 -0
  255. data/ext/pg_query/include/postgres/plerrcodes.h +998 -0
  256. data/ext/pg_query/include/postgres/plpgsql.h +1342 -0
  257. data/ext/pg_query/include/postgres/port/atomics/arch-arm.h +32 -0
  258. data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
  259. data/ext/pg_query/include/postgres/port/atomics/arch-ppc.h +256 -0
  260. data/ext/pg_query/include/postgres/port/atomics/arch-x86.h +254 -0
  261. data/ext/pg_query/include/postgres/port/atomics/fallback.h +170 -0
  262. data/ext/pg_query/include/postgres/port/atomics/generic-gcc.h +323 -0
  263. data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +119 -0
  264. data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +121 -0
  265. data/ext/pg_query/include/postgres/port/atomics/generic.h +437 -0
  266. data/ext/pg_query/include/postgres/port/atomics.h +606 -0
  267. data/ext/pg_query/include/postgres/port/pg_bitutils.h +421 -0
  268. data/ext/pg_query/include/postgres/port/pg_bswap.h +161 -0
  269. data/ext/pg_query/include/postgres/port/pg_crc32c.h +110 -0
  270. data/ext/pg_query/include/postgres/port/pg_iovec.h +117 -0
  271. data/ext/pg_query/include/postgres/port/simd.h +422 -0
  272. data/ext/pg_query/include/postgres/port/win32/arpa/inet.h +3 -0
  273. data/ext/pg_query/include/postgres/port/win32/dlfcn.h +1 -0
  274. data/ext/pg_query/include/postgres/port/win32/grp.h +1 -0
  275. data/ext/pg_query/include/postgres/port/win32/netdb.h +7 -0
  276. data/ext/pg_query/include/postgres/port/win32/netinet/in.h +3 -0
  277. data/ext/pg_query/include/postgres/port/win32/netinet/tcp.h +7 -0
  278. data/ext/pg_query/include/postgres/port/win32/pwd.h +3 -0
  279. data/ext/pg_query/include/postgres/port/win32/sys/resource.h +20 -0
  280. data/ext/pg_query/include/postgres/port/win32/sys/select.h +3 -0
  281. data/ext/pg_query/include/postgres/port/win32/sys/socket.h +34 -0
  282. data/ext/pg_query/include/postgres/port/win32/sys/un.h +17 -0
  283. data/ext/pg_query/include/postgres/port/win32/sys/wait.h +3 -0
  284. data/ext/pg_query/include/postgres/port/win32.h +59 -0
  285. data/ext/pg_query/include/postgres/port/win32_msvc/dirent.h +34 -0
  286. data/ext/pg_query/include/postgres/port/win32_msvc/sys/file.h +1 -0
  287. data/ext/pg_query/include/postgres/port/win32_msvc/sys/param.h +1 -0
  288. data/ext/pg_query/include/postgres/port/win32_msvc/sys/time.h +1 -0
  289. data/ext/pg_query/include/postgres/port/win32_msvc/unistd.h +9 -0
  290. data/ext/pg_query/include/postgres/port/win32_msvc/utime.h +3 -0
  291. data/ext/pg_query/include/postgres/port/win32_port.h +582 -0
  292. data/ext/pg_query/include/postgres/port.h +555 -0
  293. data/ext/pg_query/include/postgres/portability/instr_time.h +197 -0
  294. data/ext/pg_query/include/postgres/postgres.h +579 -0
  295. data/ext/pg_query/include/postgres/postgres_ext.h +73 -0
  296. data/ext/pg_query/include/postgres/postmaster/autovacuum.h +69 -0
  297. data/ext/pg_query/include/postgres/postmaster/bgworker.h +164 -0
  298. data/ext/pg_query/include/postgres/postmaster/bgworker_internals.h +60 -0
  299. data/ext/pg_query/include/postgres/postmaster/bgwriter.h +45 -0
  300. data/ext/pg_query/include/postgres/postmaster/interrupt.h +32 -0
  301. data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
  302. data/ext/pg_query/include/postgres/postmaster/postmaster.h +101 -0
  303. data/ext/pg_query/include/postgres/postmaster/startup.h +41 -0
  304. data/ext/pg_query/include/postgres/postmaster/syslogger.h +101 -0
  305. data/ext/pg_query/include/postgres/postmaster/walsummarizer.h +35 -0
  306. data/ext/pg_query/include/postgres/postmaster/walwriter.h +23 -0
  307. data/ext/pg_query/include/postgres/regex/regex.h +272 -0
  308. data/ext/pg_query/include/postgres/replication/logicallauncher.h +34 -0
  309. data/ext/pg_query/include/postgres/replication/logicalproto.h +274 -0
  310. data/ext/pg_query/include/postgres/replication/logicalworker.h +33 -0
  311. data/ext/pg_query/include/postgres/replication/origin.h +73 -0
  312. data/ext/pg_query/include/postgres/replication/reorderbuffer.h +734 -0
  313. data/ext/pg_query/include/postgres/replication/slot.h +289 -0
  314. data/ext/pg_query/include/postgres/replication/slotsync.h +38 -0
  315. data/ext/pg_query/include/postgres/replication/syncrep.h +109 -0
  316. data/ext/pg_query/include/postgres/replication/walreceiver.h +504 -0
  317. data/ext/pg_query/include/postgres/replication/walsender.h +76 -0
  318. data/ext/pg_query/include/postgres/rewrite/prs2lock.h +46 -0
  319. data/ext/pg_query/include/postgres/rewrite/rewriteHandler.h +41 -0
  320. data/ext/pg_query/include/postgres/rewrite/rewriteManip.h +96 -0
  321. data/ext/pg_query/include/postgres/rewrite/rewriteSupport.h +26 -0
  322. data/ext/pg_query/include/postgres/storage/block.h +108 -0
  323. data/ext/pg_query/include/postgres/storage/buf.h +46 -0
  324. data/ext/pg_query/include/postgres/storage/bufmgr.h +411 -0
  325. data/ext/pg_query/include/postgres/storage/bufpage.h +510 -0
  326. data/ext/pg_query/include/postgres/storage/condition_variable.h +73 -0
  327. data/ext/pg_query/include/postgres/storage/dsm.h +61 -0
  328. data/ext/pg_query/include/postgres/storage/dsm_impl.h +79 -0
  329. data/ext/pg_query/include/postgres/storage/fd.h +219 -0
  330. data/ext/pg_query/include/postgres/storage/fileset.h +40 -0
  331. data/ext/pg_query/include/postgres/storage/ipc.h +87 -0
  332. data/ext/pg_query/include/postgres/storage/item.h +19 -0
  333. data/ext/pg_query/include/postgres/storage/itemid.h +184 -0
  334. data/ext/pg_query/include/postgres/storage/itemptr.h +245 -0
  335. data/ext/pg_query/include/postgres/storage/large_object.h +100 -0
  336. data/ext/pg_query/include/postgres/storage/latch.h +196 -0
  337. data/ext/pg_query/include/postgres/storage/lmgr.h +126 -0
  338. data/ext/pg_query/include/postgres/storage/lock.h +624 -0
  339. data/ext/pg_query/include/postgres/storage/lockdefs.h +61 -0
  340. data/ext/pg_query/include/postgres/storage/lwlock.h +228 -0
  341. data/ext/pg_query/include/postgres/storage/lwlocknames.h +47 -0
  342. data/ext/pg_query/include/postgres/storage/off.h +57 -0
  343. data/ext/pg_query/include/postgres/storage/pg_sema.h +61 -0
  344. data/ext/pg_query/include/postgres/storage/pg_shmem.h +93 -0
  345. data/ext/pg_query/include/postgres/storage/pmsignal.h +105 -0
  346. data/ext/pg_query/include/postgres/storage/predicate.h +83 -0
  347. data/ext/pg_query/include/postgres/storage/proc.h +488 -0
  348. data/ext/pg_query/include/postgres/storage/procarray.h +103 -0
  349. data/ext/pg_query/include/postgres/storage/proclist_types.h +53 -0
  350. data/ext/pg_query/include/postgres/storage/procnumber.h +43 -0
  351. data/ext/pg_query/include/postgres/storage/procsignal.h +75 -0
  352. data/ext/pg_query/include/postgres/storage/read_stream.h +65 -0
  353. data/ext/pg_query/include/postgres/storage/relfilelocator.h +100 -0
  354. data/ext/pg_query/include/postgres/storage/s_lock.h +847 -0
  355. data/ext/pg_query/include/postgres/storage/sharedfileset.h +37 -0
  356. data/ext/pg_query/include/postgres/storage/shm_mq.h +86 -0
  357. data/ext/pg_query/include/postgres/storage/shm_toc.h +58 -0
  358. data/ext/pg_query/include/postgres/storage/shmem.h +59 -0
  359. data/ext/pg_query/include/postgres/storage/sinval.h +153 -0
  360. data/ext/pg_query/include/postgres/storage/smgr.h +130 -0
  361. data/ext/pg_query/include/postgres/storage/spin.h +77 -0
  362. data/ext/pg_query/include/postgres/storage/standby.h +109 -0
  363. data/ext/pg_query/include/postgres/storage/standbydefs.h +74 -0
  364. data/ext/pg_query/include/postgres/storage/sync.h +66 -0
  365. data/ext/pg_query/include/postgres/tcop/cmdtag.h +62 -0
  366. data/ext/pg_query/include/postgres/tcop/cmdtaglist.h +219 -0
  367. data/ext/pg_query/include/postgres/tcop/deparse_utility.h +108 -0
  368. data/ext/pg_query/include/postgres/tcop/dest.h +148 -0
  369. data/ext/pg_query/include/postgres/tcop/fastpath.h +20 -0
  370. data/ext/pg_query/include/postgres/tcop/pquery.h +51 -0
  371. data/ext/pg_query/include/postgres/tcop/tcopprot.h +98 -0
  372. data/ext/pg_query/include/postgres/tcop/utility.h +112 -0
  373. data/ext/pg_query/include/postgres/tsearch/ts_cache.h +96 -0
  374. data/ext/pg_query/include/postgres/utils/acl.h +290 -0
  375. data/ext/pg_query/include/postgres/utils/aclchk_internal.h +45 -0
  376. data/ext/pg_query/include/postgres/utils/array.h +481 -0
  377. data/ext/pg_query/include/postgres/utils/ascii.h +84 -0
  378. data/ext/pg_query/include/postgres/utils/backend_progress.h +46 -0
  379. data/ext/pg_query/include/postgres/utils/backend_status.h +340 -0
  380. data/ext/pg_query/include/postgres/utils/builtins.h +139 -0
  381. data/ext/pg_query/include/postgres/utils/bytea.h +28 -0
  382. data/ext/pg_query/include/postgres/utils/catcache.h +231 -0
  383. data/ext/pg_query/include/postgres/utils/date.h +118 -0
  384. data/ext/pg_query/include/postgres/utils/datetime.h +367 -0
  385. data/ext/pg_query/include/postgres/utils/datum.h +76 -0
  386. data/ext/pg_query/include/postgres/utils/dsa.h +166 -0
  387. data/ext/pg_query/include/postgres/utils/elog.h +540 -0
  388. data/ext/pg_query/include/postgres/utils/errcodes.h +352 -0
  389. data/ext/pg_query/include/postgres/utils/expandeddatum.h +170 -0
  390. data/ext/pg_query/include/postgres/utils/expandedrecord.h +241 -0
  391. data/ext/pg_query/include/postgres/utils/float.h +357 -0
  392. data/ext/pg_query/include/postgres/utils/fmgroids.h +3347 -0
  393. data/ext/pg_query/include/postgres/utils/fmgrprotos.h +2904 -0
  394. data/ext/pg_query/include/postgres/utils/fmgrtab.h +49 -0
  395. data/ext/pg_query/include/postgres/utils/guc.h +456 -0
  396. data/ext/pg_query/include/postgres/utils/guc_hooks.h +184 -0
  397. data/ext/pg_query/include/postgres/utils/guc_tables.h +323 -0
  398. data/ext/pg_query/include/postgres/utils/hsearch.h +153 -0
  399. data/ext/pg_query/include/postgres/utils/injection_point.h +44 -0
  400. data/ext/pg_query/include/postgres/utils/inval.h +68 -0
  401. data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
  402. data/ext/pg_query/include/postgres/utils/lsyscache.h +215 -0
  403. data/ext/pg_query/include/postgres/utils/memdebug.h +82 -0
  404. data/ext/pg_query/include/postgres/utils/memutils.h +193 -0
  405. data/ext/pg_query/include/postgres/utils/memutils_internal.h +176 -0
  406. data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +253 -0
  407. data/ext/pg_query/include/postgres/utils/numeric.h +110 -0
  408. data/ext/pg_query/include/postgres/utils/palloc.h +151 -0
  409. data/ext/pg_query/include/postgres/utils/partcache.h +103 -0
  410. data/ext/pg_query/include/postgres/utils/pg_locale.h +136 -0
  411. data/ext/pg_query/include/postgres/utils/pgstat_internal.h +827 -0
  412. data/ext/pg_query/include/postgres/utils/plancache.h +238 -0
  413. data/ext/pg_query/include/postgres/utils/portal.h +252 -0
  414. data/ext/pg_query/include/postgres/utils/probes.h +114 -0
  415. data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
  416. data/ext/pg_query/include/postgres/utils/queryenvironment.h +74 -0
  417. data/ext/pg_query/include/postgres/utils/regproc.h +39 -0
  418. data/ext/pg_query/include/postgres/utils/rel.h +711 -0
  419. data/ext/pg_query/include/postgres/utils/relcache.h +155 -0
  420. data/ext/pg_query/include/postgres/utils/reltrigger.h +81 -0
  421. data/ext/pg_query/include/postgres/utils/resowner.h +167 -0
  422. data/ext/pg_query/include/postgres/utils/ruleutils.h +52 -0
  423. data/ext/pg_query/include/postgres/utils/sharedtuplestore.h +61 -0
  424. data/ext/pg_query/include/postgres/utils/snapmgr.h +130 -0
  425. data/ext/pg_query/include/postgres/utils/snapshot.h +219 -0
  426. data/ext/pg_query/include/postgres/utils/sortsupport.h +391 -0
  427. data/ext/pg_query/include/postgres/utils/syscache.h +136 -0
  428. data/ext/pg_query/include/postgres/utils/timeout.h +96 -0
  429. data/ext/pg_query/include/postgres/utils/timestamp.h +147 -0
  430. data/ext/pg_query/include/postgres/utils/tuplesort.h +472 -0
  431. data/ext/pg_query/include/postgres/utils/tuplestore.h +88 -0
  432. data/ext/pg_query/include/postgres/utils/typcache.h +210 -0
  433. data/ext/pg_query/include/postgres/utils/varlena.h +53 -0
  434. data/ext/pg_query/include/postgres/utils/wait_event.h +108 -0
  435. data/ext/pg_query/include/postgres/utils/wait_event_types.h +218 -0
  436. data/ext/pg_query/include/postgres/utils/xml.h +94 -0
  437. data/ext/pg_query/include/postgres/varatt.h +358 -0
  438. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +8077 -6217
  439. data/ext/pg_query/include/protobuf/pg_query.pb.h +132024 -88124
  440. data/ext/pg_query/pg_query.c +10 -1
  441. data/ext/pg_query/pg_query.pb-c.c +24028 -17173
  442. data/ext/pg_query/pg_query_deparse.c +1 -9902
  443. data/ext/pg_query/pg_query_fingerprint.c +42 -18
  444. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  445. data/ext/pg_query/pg_query_internal.h +1 -1
  446. data/ext/pg_query/pg_query_json_plpgsql.c +1 -25
  447. data/ext/pg_query/pg_query_normalize.c +44 -3
  448. data/ext/pg_query/pg_query_outfuncs_json.c +62 -16
  449. data/ext/pg_query/pg_query_outfuncs_protobuf.c +73 -12
  450. data/ext/pg_query/pg_query_parse.c +47 -5
  451. data/ext/pg_query/pg_query_parse_plpgsql.c +19 -18
  452. data/ext/pg_query/pg_query_readfuncs_protobuf.c +45 -10
  453. data/ext/pg_query/pg_query_ruby.c +5 -0
  454. data/ext/pg_query/pg_query_scan.c +4 -3
  455. data/ext/pg_query/pg_query_split.c +6 -5
  456. data/ext/pg_query/postgres_deparse.c +11496 -0
  457. data/ext/pg_query/postgres_deparse.h +9 -0
  458. data/ext/pg_query/src_backend_catalog_namespace.c +262 -71
  459. data/ext/pg_query/src_backend_catalog_pg_proc.c +3 -2
  460. data/ext/pg_query/src_backend_commands_define.c +12 -3
  461. data/ext/pg_query/src_backend_nodes_bitmapset.c +142 -156
  462. data/ext/pg_query/src_backend_nodes_copyfuncs.c +100 -5881
  463. data/ext/pg_query/src_backend_nodes_equalfuncs.c +102 -3831
  464. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  465. data/ext/pg_query/src_backend_nodes_list.c +89 -18
  466. data/ext/pg_query/src_backend_nodes_makefuncs.c +138 -4
  467. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +433 -132
  468. data/ext/pg_query/src_backend_nodes_value.c +28 -19
  469. data/ext/pg_query/src_backend_parser_gram.c +45255 -38885
  470. data/ext/pg_query/src_backend_parser_parser.c +53 -8
  471. data/ext/pg_query/src_backend_parser_scan.c +6999 -3438
  472. data/ext/pg_query/src_backend_parser_scansup.c +5 -28
  473. data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
  474. data/ext/pg_query/src_backend_tcop_postgres.c +156 -114
  475. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
  476. data/ext/pg_query/src_backend_utils_adt_datum.c +14 -2
  477. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  478. data/ext/pg_query/src_backend_utils_adt_format_type.c +6 -2
  479. data/ext/pg_query/src_backend_utils_adt_numutils.c +488 -0
  480. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +247 -34
  481. data/ext/pg_query/src_backend_utils_error_assert.c +17 -18
  482. data/ext/pg_query/src_backend_utils_error_elog.c +543 -343
  483. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +47 -18
  484. data/ext/pg_query/src_backend_utils_init_globals.c +22 -7
  485. data/ext/pg_query/src_backend_utils_mb_mbutils.c +84 -148
  486. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +502 -0
  487. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +166 -0
  488. data/ext/pg_query/src_backend_utils_mmgr_aset.c +708 -499
  489. data/ext/pg_query/src_backend_utils_mmgr_bump.c +728 -0
  490. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1115 -0
  491. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +710 -218
  492. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1079 -0
  493. data/ext/pg_query/src_common_encnames.c +46 -44
  494. data/ext/pg_query/src_common_hashfn.c +3 -3
  495. data/ext/pg_query/src_common_keywords.c +15 -2
  496. data/ext/pg_query/src_common_kwlist_d.h +602 -510
  497. data/ext/pg_query/src_common_kwlookup.c +1 -1
  498. data/ext/pg_query/src_common_psprintf.c +3 -3
  499. data/ext/pg_query/src_common_stringinfo.c +21 -4
  500. data/ext/pg_query/src_common_wchar.c +754 -178
  501. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +143 -24
  502. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -18
  503. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1295 -1255
  504. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  505. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +10 -10
  506. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +20 -2
  507. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +60 -60
  508. data/ext/pg_query/src_port_pg_bitutils.c +283 -54
  509. data/ext/pg_query/src_port_pgstrcasecmp.c +57 -1
  510. data/ext/pg_query/src_port_qsort.c +12 -224
  511. data/ext/pg_query/src_port_snprintf.c +56 -39
  512. data/ext/pg_query/src_port_strerror.c +9 -21
  513. data/ext/pg_query/src_port_strlcpy.c +79 -0
  514. data/lib/pg_query/filter_columns.rb +1 -1
  515. data/lib/pg_query/fingerprint.rb +10 -9
  516. data/lib/pg_query/node.rb +18 -13
  517. data/lib/pg_query/param_refs.rb +3 -3
  518. data/lib/pg_query/parse.rb +25 -15
  519. data/lib/pg_query/parse_error.rb +1 -0
  520. data/lib/pg_query/pg_query_pb.rb +181 -3038
  521. data/lib/pg_query/scan.rb +1 -0
  522. data/lib/pg_query/treewalker.rb +55 -8
  523. data/lib/pg_query/truncate.rb +19 -21
  524. data/lib/pg_query/version.rb +1 -1
  525. metadata +447 -436
  526. data/ext/pg_query/guc-file.c +0 -0
  527. data/ext/pg_query/include/access/amapi.h +0 -246
  528. data/ext/pg_query/include/access/attmap.h +0 -52
  529. data/ext/pg_query/include/access/attnum.h +0 -64
  530. data/ext/pg_query/include/access/clog.h +0 -61
  531. data/ext/pg_query/include/access/commit_ts.h +0 -77
  532. data/ext/pg_query/include/access/detoast.h +0 -92
  533. data/ext/pg_query/include/access/genam.h +0 -228
  534. data/ext/pg_query/include/access/gin.h +0 -78
  535. data/ext/pg_query/include/access/htup.h +0 -89
  536. data/ext/pg_query/include/access/htup_details.h +0 -819
  537. data/ext/pg_query/include/access/itup.h +0 -161
  538. data/ext/pg_query/include/access/parallel.h +0 -82
  539. data/ext/pg_query/include/access/printtup.h +0 -35
  540. data/ext/pg_query/include/access/relation.h +0 -28
  541. data/ext/pg_query/include/access/relscan.h +0 -176
  542. data/ext/pg_query/include/access/rmgr.h +0 -35
  543. data/ext/pg_query/include/access/rmgrlist.h +0 -49
  544. data/ext/pg_query/include/access/sdir.h +0 -58
  545. data/ext/pg_query/include/access/skey.h +0 -151
  546. data/ext/pg_query/include/access/stratnum.h +0 -83
  547. data/ext/pg_query/include/access/sysattr.h +0 -29
  548. data/ext/pg_query/include/access/table.h +0 -27
  549. data/ext/pg_query/include/access/tableam.h +0 -1825
  550. data/ext/pg_query/include/access/transam.h +0 -265
  551. data/ext/pg_query/include/access/tupconvert.h +0 -51
  552. data/ext/pg_query/include/access/tupdesc.h +0 -154
  553. data/ext/pg_query/include/access/tupmacs.h +0 -247
  554. data/ext/pg_query/include/access/twophase.h +0 -63
  555. data/ext/pg_query/include/access/xact.h +0 -469
  556. data/ext/pg_query/include/access/xlog.h +0 -398
  557. data/ext/pg_query/include/access/xlog_internal.h +0 -339
  558. data/ext/pg_query/include/access/xlogdefs.h +0 -109
  559. data/ext/pg_query/include/access/xloginsert.h +0 -64
  560. data/ext/pg_query/include/access/xlogreader.h +0 -337
  561. data/ext/pg_query/include/access/xlogrecord.h +0 -227
  562. data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
  563. data/ext/pg_query/include/c.h +0 -1334
  564. data/ext/pg_query/include/catalog/catalog.h +0 -42
  565. data/ext/pg_query/include/catalog/catversion.h +0 -58
  566. data/ext/pg_query/include/catalog/dependency.h +0 -277
  567. data/ext/pg_query/include/catalog/genbki.h +0 -64
  568. data/ext/pg_query/include/catalog/index.h +0 -199
  569. data/ext/pg_query/include/catalog/indexing.h +0 -366
  570. data/ext/pg_query/include/catalog/namespace.h +0 -188
  571. data/ext/pg_query/include/catalog/objectaccess.h +0 -197
  572. data/ext/pg_query/include/catalog/objectaddress.h +0 -84
  573. data/ext/pg_query/include/catalog/pg_aggregate.h +0 -176
  574. data/ext/pg_query/include/catalog/pg_aggregate_d.h +0 -77
  575. data/ext/pg_query/include/catalog/pg_am.h +0 -60
  576. data/ext/pg_query/include/catalog/pg_am_d.h +0 -45
  577. data/ext/pg_query/include/catalog/pg_attribute.h +0 -204
  578. data/ext/pg_query/include/catalog/pg_attribute_d.h +0 -59
  579. data/ext/pg_query/include/catalog/pg_authid.h +0 -58
  580. data/ext/pg_query/include/catalog/pg_authid_d.h +0 -49
  581. data/ext/pg_query/include/catalog/pg_class.h +0 -200
  582. data/ext/pg_query/include/catalog/pg_class_d.h +0 -103
  583. data/ext/pg_query/include/catalog/pg_collation.h +0 -73
  584. data/ext/pg_query/include/catalog/pg_collation_d.h +0 -45
  585. data/ext/pg_query/include/catalog/pg_constraint.h +0 -247
  586. data/ext/pg_query/include/catalog/pg_constraint_d.h +0 -67
  587. data/ext/pg_query/include/catalog/pg_control.h +0 -252
  588. data/ext/pg_query/include/catalog/pg_conversion.h +0 -72
  589. data/ext/pg_query/include/catalog/pg_conversion_d.h +0 -35
  590. data/ext/pg_query/include/catalog/pg_depend.h +0 -73
  591. data/ext/pg_query/include/catalog/pg_depend_d.h +0 -34
  592. data/ext/pg_query/include/catalog/pg_event_trigger.h +0 -51
  593. data/ext/pg_query/include/catalog/pg_event_trigger_d.h +0 -34
  594. data/ext/pg_query/include/catalog/pg_index.h +0 -80
  595. data/ext/pg_query/include/catalog/pg_index_d.h +0 -56
  596. data/ext/pg_query/include/catalog/pg_language.h +0 -67
  597. data/ext/pg_query/include/catalog/pg_language_d.h +0 -39
  598. data/ext/pg_query/include/catalog/pg_namespace.h +0 -59
  599. data/ext/pg_query/include/catalog/pg_namespace_d.h +0 -34
  600. data/ext/pg_query/include/catalog/pg_opclass.h +0 -85
  601. data/ext/pg_query/include/catalog/pg_opclass_d.h +0 -49
  602. data/ext/pg_query/include/catalog/pg_operator.h +0 -104
  603. data/ext/pg_query/include/catalog/pg_operator_d.h +0 -106
  604. data/ext/pg_query/include/catalog/pg_opfamily.h +0 -60
  605. data/ext/pg_query/include/catalog/pg_opfamily_d.h +0 -47
  606. data/ext/pg_query/include/catalog/pg_partitioned_table.h +0 -63
  607. data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +0 -35
  608. data/ext/pg_query/include/catalog/pg_proc.h +0 -211
  609. data/ext/pg_query/include/catalog/pg_proc_d.h +0 -99
  610. data/ext/pg_query/include/catalog/pg_publication.h +0 -118
  611. data/ext/pg_query/include/catalog/pg_publication_d.h +0 -36
  612. data/ext/pg_query/include/catalog/pg_replication_origin.h +0 -57
  613. data/ext/pg_query/include/catalog/pg_replication_origin_d.h +0 -29
  614. data/ext/pg_query/include/catalog/pg_statistic.h +0 -275
  615. data/ext/pg_query/include/catalog/pg_statistic_d.h +0 -194
  616. data/ext/pg_query/include/catalog/pg_statistic_ext.h +0 -74
  617. data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +0 -40
  618. data/ext/pg_query/include/catalog/pg_transform.h +0 -45
  619. data/ext/pg_query/include/catalog/pg_transform_d.h +0 -32
  620. data/ext/pg_query/include/catalog/pg_trigger.h +0 -137
  621. data/ext/pg_query/include/catalog/pg_trigger_d.h +0 -106
  622. data/ext/pg_query/include/catalog/pg_ts_config.h +0 -50
  623. data/ext/pg_query/include/catalog/pg_ts_config_d.h +0 -32
  624. data/ext/pg_query/include/catalog/pg_ts_dict.h +0 -54
  625. data/ext/pg_query/include/catalog/pg_ts_dict_d.h +0 -33
  626. data/ext/pg_query/include/catalog/pg_ts_parser.h +0 -57
  627. data/ext/pg_query/include/catalog/pg_ts_parser_d.h +0 -35
  628. data/ext/pg_query/include/catalog/pg_ts_template.h +0 -48
  629. data/ext/pg_query/include/catalog/pg_ts_template_d.h +0 -32
  630. data/ext/pg_query/include/catalog/pg_type.h +0 -373
  631. data/ext/pg_query/include/catalog/pg_type_d.h +0 -285
  632. data/ext/pg_query/include/catalog/storage.h +0 -48
  633. data/ext/pg_query/include/commands/async.h +0 -54
  634. data/ext/pg_query/include/commands/dbcommands.h +0 -35
  635. data/ext/pg_query/include/commands/defrem.h +0 -173
  636. data/ext/pg_query/include/commands/event_trigger.h +0 -88
  637. data/ext/pg_query/include/commands/explain.h +0 -127
  638. data/ext/pg_query/include/commands/prepare.h +0 -61
  639. data/ext/pg_query/include/commands/tablespace.h +0 -69
  640. data/ext/pg_query/include/commands/trigger.h +0 -285
  641. data/ext/pg_query/include/commands/user.h +0 -37
  642. data/ext/pg_query/include/commands/vacuum.h +0 -293
  643. data/ext/pg_query/include/commands/variable.h +0 -38
  644. data/ext/pg_query/include/common/file_perm.h +0 -56
  645. data/ext/pg_query/include/common/hashfn.h +0 -104
  646. data/ext/pg_query/include/common/ip.h +0 -37
  647. data/ext/pg_query/include/common/keywords.h +0 -33
  648. data/ext/pg_query/include/common/kwlookup.h +0 -44
  649. data/ext/pg_query/include/common/relpath.h +0 -90
  650. data/ext/pg_query/include/common/string.h +0 -19
  651. data/ext/pg_query/include/common/unicode_combining_table.h +0 -196
  652. data/ext/pg_query/include/datatype/timestamp.h +0 -197
  653. data/ext/pg_query/include/executor/execdesc.h +0 -70
  654. data/ext/pg_query/include/executor/executor.h +0 -620
  655. data/ext/pg_query/include/executor/functions.h +0 -41
  656. data/ext/pg_query/include/executor/instrument.h +0 -101
  657. data/ext/pg_query/include/executor/spi.h +0 -175
  658. data/ext/pg_query/include/executor/tablefunc.h +0 -67
  659. data/ext/pg_query/include/executor/tuptable.h +0 -487
  660. data/ext/pg_query/include/fmgr.h +0 -775
  661. data/ext/pg_query/include/funcapi.h +0 -348
  662. data/ext/pg_query/include/getaddrinfo.h +0 -162
  663. data/ext/pg_query/include/jit/jit.h +0 -105
  664. data/ext/pg_query/include/kwlist_d.h +0 -1072
  665. data/ext/pg_query/include/lib/ilist.h +0 -727
  666. data/ext/pg_query/include/lib/pairingheap.h +0 -102
  667. data/ext/pg_query/include/lib/simplehash.h +0 -1059
  668. data/ext/pg_query/include/lib/stringinfo.h +0 -161
  669. data/ext/pg_query/include/libpq/auth.h +0 -29
  670. data/ext/pg_query/include/libpq/crypt.h +0 -46
  671. data/ext/pg_query/include/libpq/hba.h +0 -140
  672. data/ext/pg_query/include/libpq/libpq-be.h +0 -326
  673. data/ext/pg_query/include/libpq/libpq.h +0 -134
  674. data/ext/pg_query/include/libpq/pqcomm.h +0 -208
  675. data/ext/pg_query/include/libpq/pqformat.h +0 -210
  676. data/ext/pg_query/include/libpq/pqsignal.h +0 -42
  677. data/ext/pg_query/include/mb/pg_wchar.h +0 -673
  678. data/ext/pg_query/include/mb/stringinfo_mb.h +0 -24
  679. data/ext/pg_query/include/miscadmin.h +0 -489
  680. data/ext/pg_query/include/nodes/bitmapset.h +0 -122
  681. data/ext/pg_query/include/nodes/execnodes.h +0 -2523
  682. data/ext/pg_query/include/nodes/extensible.h +0 -160
  683. data/ext/pg_query/include/nodes/lockoptions.h +0 -61
  684. data/ext/pg_query/include/nodes/makefuncs.h +0 -108
  685. data/ext/pg_query/include/nodes/memnodes.h +0 -108
  686. data/ext/pg_query/include/nodes/nodeFuncs.h +0 -162
  687. data/ext/pg_query/include/nodes/nodes.h +0 -842
  688. data/ext/pg_query/include/nodes/params.h +0 -170
  689. data/ext/pg_query/include/nodes/parsenodes.h +0 -3580
  690. data/ext/pg_query/include/nodes/pathnodes.h +0 -2557
  691. data/ext/pg_query/include/nodes/pg_list.h +0 -606
  692. data/ext/pg_query/include/nodes/plannodes.h +0 -1266
  693. data/ext/pg_query/include/nodes/primnodes.h +0 -1541
  694. data/ext/pg_query/include/nodes/print.h +0 -34
  695. data/ext/pg_query/include/nodes/tidbitmap.h +0 -75
  696. data/ext/pg_query/include/nodes/value.h +0 -61
  697. data/ext/pg_query/include/optimizer/cost.h +0 -206
  698. data/ext/pg_query/include/optimizer/geqo.h +0 -88
  699. data/ext/pg_query/include/optimizer/geqo_gene.h +0 -45
  700. data/ext/pg_query/include/optimizer/optimizer.h +0 -194
  701. data/ext/pg_query/include/optimizer/paths.h +0 -257
  702. data/ext/pg_query/include/optimizer/planmain.h +0 -119
  703. data/ext/pg_query/include/parser/analyze.h +0 -49
  704. data/ext/pg_query/include/parser/gram.h +0 -1067
  705. data/ext/pg_query/include/parser/gramparse.h +0 -75
  706. data/ext/pg_query/include/parser/kwlist.h +0 -477
  707. data/ext/pg_query/include/parser/parse_agg.h +0 -68
  708. data/ext/pg_query/include/parser/parse_clause.h +0 -54
  709. data/ext/pg_query/include/parser/parse_coerce.h +0 -98
  710. data/ext/pg_query/include/parser/parse_collate.h +0 -27
  711. data/ext/pg_query/include/parser/parse_expr.h +0 -26
  712. data/ext/pg_query/include/parser/parse_func.h +0 -73
  713. data/ext/pg_query/include/parser/parse_node.h +0 -327
  714. data/ext/pg_query/include/parser/parse_oper.h +0 -67
  715. data/ext/pg_query/include/parser/parse_relation.h +0 -123
  716. data/ext/pg_query/include/parser/parse_target.h +0 -46
  717. data/ext/pg_query/include/parser/parse_type.h +0 -60
  718. data/ext/pg_query/include/parser/parser.h +0 -41
  719. data/ext/pg_query/include/parser/parsetree.h +0 -61
  720. data/ext/pg_query/include/parser/scanner.h +0 -152
  721. data/ext/pg_query/include/parser/scansup.h +0 -30
  722. data/ext/pg_query/include/partitioning/partdefs.h +0 -26
  723. data/ext/pg_query/include/pg_config.h +0 -995
  724. data/ext/pg_query/include/pg_config_manual.h +0 -357
  725. data/ext/pg_query/include/pg_config_os.h +0 -8
  726. data/ext/pg_query/include/pg_getopt.h +0 -56
  727. data/ext/pg_query/include/pg_trace.h +0 -17
  728. data/ext/pg_query/include/pgstat.h +0 -1488
  729. data/ext/pg_query/include/pgtime.h +0 -84
  730. data/ext/pg_query/include/pl_gram.h +0 -385
  731. data/ext/pg_query/include/pl_reserved_kwlist.h +0 -52
  732. data/ext/pg_query/include/pl_reserved_kwlist_d.h +0 -114
  733. data/ext/pg_query/include/pl_unreserved_kwlist.h +0 -112
  734. data/ext/pg_query/include/pl_unreserved_kwlist_d.h +0 -246
  735. data/ext/pg_query/include/plerrcodes.h +0 -990
  736. data/ext/pg_query/include/plpgsql.h +0 -1347
  737. data/ext/pg_query/include/port/atomics/arch-arm.h +0 -26
  738. data/ext/pg_query/include/port/atomics/arch-ppc.h +0 -254
  739. data/ext/pg_query/include/port/atomics/arch-x86.h +0 -252
  740. data/ext/pg_query/include/port/atomics/fallback.h +0 -170
  741. data/ext/pg_query/include/port/atomics/generic-gcc.h +0 -286
  742. data/ext/pg_query/include/port/atomics/generic.h +0 -401
  743. data/ext/pg_query/include/port/atomics.h +0 -524
  744. data/ext/pg_query/include/port/pg_bitutils.h +0 -272
  745. data/ext/pg_query/include/port/pg_bswap.h +0 -161
  746. data/ext/pg_query/include/port/pg_crc32c.h +0 -101
  747. data/ext/pg_query/include/port.h +0 -528
  748. data/ext/pg_query/include/portability/instr_time.h +0 -256
  749. data/ext/pg_query/include/postgres.h +0 -764
  750. data/ext/pg_query/include/postgres_ext.h +0 -74
  751. data/ext/pg_query/include/postmaster/autovacuum.h +0 -83
  752. data/ext/pg_query/include/postmaster/bgworker.h +0 -161
  753. data/ext/pg_query/include/postmaster/bgworker_internals.h +0 -64
  754. data/ext/pg_query/include/postmaster/bgwriter.h +0 -45
  755. data/ext/pg_query/include/postmaster/fork_process.h +0 -17
  756. data/ext/pg_query/include/postmaster/interrupt.h +0 -32
  757. data/ext/pg_query/include/postmaster/pgarch.h +0 -39
  758. data/ext/pg_query/include/postmaster/postmaster.h +0 -77
  759. data/ext/pg_query/include/postmaster/syslogger.h +0 -98
  760. data/ext/pg_query/include/postmaster/walwriter.h +0 -21
  761. data/ext/pg_query/include/regex/regex.h +0 -184
  762. data/ext/pg_query/include/replication/logicallauncher.h +0 -31
  763. data/ext/pg_query/include/replication/logicalproto.h +0 -110
  764. data/ext/pg_query/include/replication/logicalworker.h +0 -19
  765. data/ext/pg_query/include/replication/origin.h +0 -73
  766. data/ext/pg_query/include/replication/reorderbuffer.h +0 -468
  767. data/ext/pg_query/include/replication/slot.h +0 -219
  768. data/ext/pg_query/include/replication/syncrep.h +0 -115
  769. data/ext/pg_query/include/replication/walreceiver.h +0 -340
  770. data/ext/pg_query/include/replication/walsender.h +0 -74
  771. data/ext/pg_query/include/rewrite/prs2lock.h +0 -46
  772. data/ext/pg_query/include/rewrite/rewriteHandler.h +0 -40
  773. data/ext/pg_query/include/rewrite/rewriteManip.h +0 -87
  774. data/ext/pg_query/include/rewrite/rewriteSupport.h +0 -26
  775. data/ext/pg_query/include/storage/backendid.h +0 -37
  776. data/ext/pg_query/include/storage/block.h +0 -121
  777. data/ext/pg_query/include/storage/buf.h +0 -46
  778. data/ext/pg_query/include/storage/bufmgr.h +0 -292
  779. data/ext/pg_query/include/storage/bufpage.h +0 -459
  780. data/ext/pg_query/include/storage/condition_variable.h +0 -62
  781. data/ext/pg_query/include/storage/dsm.h +0 -61
  782. data/ext/pg_query/include/storage/dsm_impl.h +0 -75
  783. data/ext/pg_query/include/storage/fd.h +0 -168
  784. data/ext/pg_query/include/storage/ipc.h +0 -81
  785. data/ext/pg_query/include/storage/item.h +0 -19
  786. data/ext/pg_query/include/storage/itemid.h +0 -184
  787. data/ext/pg_query/include/storage/itemptr.h +0 -206
  788. data/ext/pg_query/include/storage/large_object.h +0 -100
  789. data/ext/pg_query/include/storage/latch.h +0 -190
  790. data/ext/pg_query/include/storage/lmgr.h +0 -114
  791. data/ext/pg_query/include/storage/lock.h +0 -613
  792. data/ext/pg_query/include/storage/lockdefs.h +0 -59
  793. data/ext/pg_query/include/storage/lwlock.h +0 -233
  794. data/ext/pg_query/include/storage/lwlocknames.h +0 -51
  795. data/ext/pg_query/include/storage/off.h +0 -57
  796. data/ext/pg_query/include/storage/pg_sema.h +0 -61
  797. data/ext/pg_query/include/storage/pg_shmem.h +0 -90
  798. data/ext/pg_query/include/storage/pmsignal.h +0 -94
  799. data/ext/pg_query/include/storage/predicate.h +0 -87
  800. data/ext/pg_query/include/storage/proc.h +0 -347
  801. data/ext/pg_query/include/storage/proclist_types.h +0 -51
  802. data/ext/pg_query/include/storage/procsignal.h +0 -75
  803. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  804. data/ext/pg_query/include/storage/s_lock.h +0 -1071
  805. data/ext/pg_query/include/storage/sharedfileset.h +0 -45
  806. data/ext/pg_query/include/storage/shm_mq.h +0 -85
  807. data/ext/pg_query/include/storage/shm_toc.h +0 -58
  808. data/ext/pg_query/include/storage/shmem.h +0 -81
  809. data/ext/pg_query/include/storage/sinval.h +0 -153
  810. data/ext/pg_query/include/storage/sinvaladt.h +0 -43
  811. data/ext/pg_query/include/storage/smgr.h +0 -109
  812. data/ext/pg_query/include/storage/spin.h +0 -77
  813. data/ext/pg_query/include/storage/standby.h +0 -91
  814. data/ext/pg_query/include/storage/standbydefs.h +0 -74
  815. data/ext/pg_query/include/storage/sync.h +0 -62
  816. data/ext/pg_query/include/tcop/cmdtag.h +0 -58
  817. data/ext/pg_query/include/tcop/cmdtaglist.h +0 -217
  818. data/ext/pg_query/include/tcop/deparse_utility.h +0 -108
  819. data/ext/pg_query/include/tcop/dest.h +0 -149
  820. data/ext/pg_query/include/tcop/fastpath.h +0 -21
  821. data/ext/pg_query/include/tcop/pquery.h +0 -51
  822. data/ext/pg_query/include/tcop/tcopprot.h +0 -89
  823. data/ext/pg_query/include/tcop/utility.h +0 -108
  824. data/ext/pg_query/include/tsearch/ts_cache.h +0 -98
  825. data/ext/pg_query/include/utils/acl.h +0 -312
  826. data/ext/pg_query/include/utils/aclchk_internal.h +0 -45
  827. data/ext/pg_query/include/utils/array.h +0 -459
  828. data/ext/pg_query/include/utils/builtins.h +0 -128
  829. data/ext/pg_query/include/utils/bytea.h +0 -27
  830. data/ext/pg_query/include/utils/catcache.h +0 -231
  831. data/ext/pg_query/include/utils/date.h +0 -90
  832. data/ext/pg_query/include/utils/datetime.h +0 -343
  833. data/ext/pg_query/include/utils/datum.h +0 -68
  834. data/ext/pg_query/include/utils/dsa.h +0 -123
  835. data/ext/pg_query/include/utils/dynahash.h +0 -19
  836. data/ext/pg_query/include/utils/elog.h +0 -439
  837. data/ext/pg_query/include/utils/errcodes.h +0 -352
  838. data/ext/pg_query/include/utils/expandeddatum.h +0 -159
  839. data/ext/pg_query/include/utils/expandedrecord.h +0 -231
  840. data/ext/pg_query/include/utils/float.h +0 -356
  841. data/ext/pg_query/include/utils/fmgroids.h +0 -2657
  842. data/ext/pg_query/include/utils/fmgrprotos.h +0 -2646
  843. data/ext/pg_query/include/utils/fmgrtab.h +0 -48
  844. data/ext/pg_query/include/utils/guc.h +0 -443
  845. data/ext/pg_query/include/utils/guc_tables.h +0 -272
  846. data/ext/pg_query/include/utils/hsearch.h +0 -149
  847. data/ext/pg_query/include/utils/inval.h +0 -65
  848. data/ext/pg_query/include/utils/lsyscache.h +0 -198
  849. data/ext/pg_query/include/utils/memdebug.h +0 -82
  850. data/ext/pg_query/include/utils/memutils.h +0 -225
  851. data/ext/pg_query/include/utils/numeric.h +0 -76
  852. data/ext/pg_query/include/utils/palloc.h +0 -136
  853. data/ext/pg_query/include/utils/partcache.h +0 -102
  854. data/ext/pg_query/include/utils/pg_locale.h +0 -119
  855. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  856. data/ext/pg_query/include/utils/pidfile.h +0 -56
  857. data/ext/pg_query/include/utils/plancache.h +0 -235
  858. data/ext/pg_query/include/utils/portal.h +0 -254
  859. data/ext/pg_query/include/utils/probes.h +0 -114
  860. data/ext/pg_query/include/utils/ps_status.h +0 -25
  861. data/ext/pg_query/include/utils/queryenvironment.h +0 -74
  862. data/ext/pg_query/include/utils/regproc.h +0 -28
  863. data/ext/pg_query/include/utils/rel.h +0 -643
  864. data/ext/pg_query/include/utils/relcache.h +0 -150
  865. data/ext/pg_query/include/utils/reltrigger.h +0 -81
  866. data/ext/pg_query/include/utils/resowner.h +0 -86
  867. data/ext/pg_query/include/utils/rls.h +0 -50
  868. data/ext/pg_query/include/utils/ruleutils.h +0 -44
  869. data/ext/pg_query/include/utils/sharedtuplestore.h +0 -61
  870. data/ext/pg_query/include/utils/snapmgr.h +0 -159
  871. data/ext/pg_query/include/utils/snapshot.h +0 -206
  872. data/ext/pg_query/include/utils/sortsupport.h +0 -276
  873. data/ext/pg_query/include/utils/syscache.h +0 -219
  874. data/ext/pg_query/include/utils/timeout.h +0 -88
  875. data/ext/pg_query/include/utils/timestamp.h +0 -116
  876. data/ext/pg_query/include/utils/tuplesort.h +0 -277
  877. data/ext/pg_query/include/utils/tuplestore.h +0 -91
  878. data/ext/pg_query/include/utils/typcache.h +0 -202
  879. data/ext/pg_query/include/utils/tzparser.h +0 -39
  880. data/ext/pg_query/include/utils/varlena.h +0 -39
  881. data/ext/pg_query/include/utils/xml.h +0 -84
  882. data/ext/pg_query/pg_query_ruby_freebsd.sym +0 -2
  883. data/ext/pg_query/src_backend_libpq_pqcomm.c +0 -659
  884. data/ext/pg_query/src_backend_parser_parse_expr.c +0 -313
  885. data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2230
  886. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -370
  887. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1086
  888. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1832
  889. data/ext/pg_query/src_common_string.c +0 -86
  890. data/ext/pg_query/src_port_erand48.c +0 -127
  891. data/ext/pg_query/src_port_pgsleep.c +0 -69
  892. data/ext/pg_query/src_port_random.c +0 -31
  893. data/ext/pg_query/src_port_strnlen.c +0 -39
  894. /data/ext/pg_query/{pg_query_ruby.sym → ext_symbols.sym} +0 -0
  895. /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
@@ -3,12 +3,14 @@
3
3
  static void _outAlias(OUT_TYPE(Alias, Alias) out_node, const Alias *node);
4
4
  static void _outRangeVar(OUT_TYPE(RangeVar, RangeVar) out_node, const RangeVar *node);
5
5
  static void _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out_node, const TableFunc *node);
6
- static void _outExpr(OUT_TYPE(Expr, Expr) out_node, const Expr *node);
6
+ static void _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out_node, const IntoClause *node);
7
7
  static void _outVar(OUT_TYPE(Var, Var) out_node, const Var *node);
8
8
  static void _outParam(OUT_TYPE(Param, Param) out_node, const Param *node);
9
9
  static void _outAggref(OUT_TYPE(Aggref, Aggref) out_node, const Aggref *node);
10
10
  static void _outGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) out_node, const GroupingFunc *node);
11
11
  static void _outWindowFunc(OUT_TYPE(WindowFunc, WindowFunc) out_node, const WindowFunc *node);
12
+ static void _outWindowFuncRunCondition(OUT_TYPE(WindowFuncRunCondition, WindowFuncRunCondition) out_node, const WindowFuncRunCondition *node);
13
+ static void _outMergeSupportFunc(OUT_TYPE(MergeSupportFunc, MergeSupportFunc) out_node, const MergeSupportFunc *node);
12
14
  static void _outSubscriptingRef(OUT_TYPE(SubscriptingRef, SubscriptingRef) out_node, const SubscriptingRef *node);
13
15
  static void _outFuncExpr(OUT_TYPE(FuncExpr, FuncExpr) out_node, const FuncExpr *node);
14
16
  static void _outNamedArgExpr(OUT_TYPE(NamedArgExpr, NamedArgExpr) out_node, const NamedArgExpr *node);
@@ -37,8 +39,19 @@ static void _outCoalesceExpr(OUT_TYPE(CoalesceExpr, CoalesceExpr) out_node, cons
37
39
  static void _outMinMaxExpr(OUT_TYPE(MinMaxExpr, MinMaxExpr) out_node, const MinMaxExpr *node);
38
40
  static void _outSQLValueFunction(OUT_TYPE(SQLValueFunction, SQLValueFunction) out_node, const SQLValueFunction *node);
39
41
  static void _outXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) out_node, const XmlExpr *node);
42
+ static void _outJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) out_node, const JsonFormat *node);
43
+ static void _outJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) out_node, const JsonReturning *node);
44
+ static void _outJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) out_node, const JsonValueExpr *node);
45
+ static void _outJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) out_node, const JsonConstructorExpr *node);
46
+ static void _outJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) out_node, const JsonIsPredicate *node);
47
+ static void _outJsonBehavior(OUT_TYPE(JsonBehavior, JsonBehavior) out_node, const JsonBehavior *node);
48
+ static void _outJsonExpr(OUT_TYPE(JsonExpr, JsonExpr) out_node, const JsonExpr *node);
49
+ static void _outJsonTablePath(OUT_TYPE(JsonTablePath, JsonTablePath) out_node, const JsonTablePath *node);
50
+ static void _outJsonTablePathScan(OUT_TYPE(JsonTablePathScan, JsonTablePathScan) out_node, const JsonTablePathScan *node);
51
+ static void _outJsonTableSiblingJoin(OUT_TYPE(JsonTableSiblingJoin, JsonTableSiblingJoin) out_node, const JsonTableSiblingJoin *node);
40
52
  static void _outNullTest(OUT_TYPE(NullTest, NullTest) out_node, const NullTest *node);
41
53
  static void _outBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) out_node, const BooleanTest *node);
54
+ static void _outMergeAction(OUT_TYPE(MergeAction, MergeAction) out_node, const MergeAction *node);
42
55
  static void _outCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) out_node, const CoerceToDomain *node);
43
56
  static void _outCoerceToDomainValue(OUT_TYPE(CoerceToDomainValue, CoerceToDomainValue) out_node, const CoerceToDomainValue *node);
44
57
  static void _outSetToDefault(OUT_TYPE(SetToDefault, SetToDefault) out_node, const SetToDefault *node);
@@ -50,176 +63,202 @@ static void _outRangeTblRef(OUT_TYPE(RangeTblRef, RangeTblRef) out_node, const R
50
63
  static void _outJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) out_node, const JoinExpr *node);
51
64
  static void _outFromExpr(OUT_TYPE(FromExpr, FromExpr) out_node, const FromExpr *node);
52
65
  static void _outOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) out_node, const OnConflictExpr *node);
53
- static void _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out_node, const IntoClause *node);
54
- static void _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out_node, const RawStmt *node);
55
66
  static void _outQuery(OUT_TYPE(Query, Query) out_node, const Query *node);
67
+ static void _outTypeName(OUT_TYPE(TypeName, TypeName) out_node, const TypeName *node);
68
+ static void _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out_node, const ColumnRef *node);
69
+ static void _outParamRef(OUT_TYPE(ParamRef, ParamRef) out_node, const ParamRef *node);
70
+ static void _outAExpr(OUT_TYPE(A_Expr, AExpr) out_node, const A_Expr *node);
71
+ static void _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out_node, const TypeCast *node);
72
+ static void _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out_node, const CollateClause *node);
73
+ static void _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out_node, const RoleSpec *node);
74
+ static void _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out_node, const FuncCall *node);
75
+ static void _outAStar(OUT_TYPE(A_Star, AStar) out_node, const A_Star *node);
76
+ static void _outAIndices(OUT_TYPE(A_Indices, AIndices) out_node, const A_Indices *node);
77
+ static void _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out_node, const A_Indirection *node);
78
+ static void _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out_node, const A_ArrayExpr *node);
79
+ static void _outResTarget(OUT_TYPE(ResTarget, ResTarget) out_node, const ResTarget *node);
80
+ static void _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out_node, const MultiAssignRef *node);
81
+ static void _outSortBy(OUT_TYPE(SortBy, SortBy) out_node, const SortBy *node);
82
+ static void _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out_node, const WindowDef *node);
83
+ static void _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out_node, const RangeSubselect *node);
84
+ static void _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out_node, const RangeFunction *node);
85
+ static void _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out_node, const RangeTableFunc *node);
86
+ static void _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out_node, const RangeTableFuncCol *node);
87
+ static void _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out_node, const RangeTableSample *node);
88
+ static void _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out_node, const ColumnDef *node);
89
+ static void _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out_node, const TableLikeClause *node);
90
+ static void _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out_node, const IndexElem *node);
91
+ static void _outDefElem(OUT_TYPE(DefElem, DefElem) out_node, const DefElem *node);
92
+ static void _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out_node, const LockingClause *node);
93
+ static void _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out_node, const XmlSerialize *node);
94
+ static void _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out_node, const PartitionElem *node);
95
+ static void _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out_node, const PartitionSpec *node);
96
+ static void _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out_node, const PartitionBoundSpec *node);
97
+ static void _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out_node, const PartitionRangeDatum *node);
98
+ static void _outSinglePartitionSpec(OUT_TYPE(SinglePartitionSpec, SinglePartitionSpec) out_node, const SinglePartitionSpec *node);
99
+ static void _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out_node, const PartitionCmd *node);
100
+ static void _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out_node, const RangeTblEntry *node);
101
+ static void _outRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) out_node, const RTEPermissionInfo *node);
102
+ static void _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out_node, const RangeTblFunction *node);
103
+ static void _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out_node, const TableSampleClause *node);
104
+ static void _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out_node, const WithCheckOption *node);
105
+ static void _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out_node, const SortGroupClause *node);
106
+ static void _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out_node, const GroupingSet *node);
107
+ static void _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out_node, const WindowClause *node);
108
+ static void _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out_node, const RowMarkClause *node);
109
+ static void _outWithClause(OUT_TYPE(WithClause, WithClause) out_node, const WithClause *node);
110
+ static void _outInferClause(OUT_TYPE(InferClause, InferClause) out_node, const InferClause *node);
111
+ static void _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out_node, const OnConflictClause *node);
112
+ static void _outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out_node, const CTESearchClause *node);
113
+ static void _outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out_node, const CTECycleClause *node);
114
+ static void _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out_node, const CommonTableExpr *node);
115
+ static void _outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out_node, const MergeWhenClause *node);
116
+ static void _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out_node, const TriggerTransition *node);
117
+ static void _outJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) out_node, const JsonOutput *node);
118
+ static void _outJsonArgument(OUT_TYPE(JsonArgument, JsonArgument) out_node, const JsonArgument *node);
119
+ static void _outJsonFuncExpr(OUT_TYPE(JsonFuncExpr, JsonFuncExpr) out_node, const JsonFuncExpr *node);
120
+ static void _outJsonTablePathSpec(OUT_TYPE(JsonTablePathSpec, JsonTablePathSpec) out_node, const JsonTablePathSpec *node);
121
+ static void _outJsonTable(OUT_TYPE(JsonTable, JsonTable) out_node, const JsonTable *node);
122
+ static void _outJsonTableColumn(OUT_TYPE(JsonTableColumn, JsonTableColumn) out_node, const JsonTableColumn *node);
123
+ static void _outJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) out_node, const JsonKeyValue *node);
124
+ static void _outJsonParseExpr(OUT_TYPE(JsonParseExpr, JsonParseExpr) out_node, const JsonParseExpr *node);
125
+ static void _outJsonScalarExpr(OUT_TYPE(JsonScalarExpr, JsonScalarExpr) out_node, const JsonScalarExpr *node);
126
+ static void _outJsonSerializeExpr(OUT_TYPE(JsonSerializeExpr, JsonSerializeExpr) out_node, const JsonSerializeExpr *node);
127
+ static void _outJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) out_node, const JsonObjectConstructor *node);
128
+ static void _outJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) out_node, const JsonArrayConstructor *node);
129
+ static void _outJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) out_node, const JsonArrayQueryConstructor *node);
130
+ static void _outJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) out_node, const JsonAggConstructor *node);
131
+ static void _outJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) out_node, const JsonObjectAgg *node);
132
+ static void _outJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) out_node, const JsonArrayAgg *node);
133
+ static void _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out_node, const RawStmt *node);
56
134
  static void _outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out_node, const InsertStmt *node);
57
135
  static void _outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out_node, const DeleteStmt *node);
58
136
  static void _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out_node, const UpdateStmt *node);
137
+ static void _outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out_node, const MergeStmt *node);
59
138
  static void _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out_node, const SelectStmt *node);
139
+ static void _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out_node, const SetOperationStmt *node);
140
+ static void _outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out_node, const ReturnStmt *node);
141
+ static void _outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out_node, const PLAssignStmt *node);
142
+ static void _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out_node, const CreateSchemaStmt *node);
60
143
  static void _outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out_node, const AlterTableStmt *node);
144
+ static void _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out_node, const ReplicaIdentityStmt *node);
61
145
  static void _outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out_node, const AlterTableCmd *node);
146
+ static void _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out_node, const AlterCollationStmt *node);
62
147
  static void _outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out_node, const AlterDomainStmt *node);
63
- static void _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out_node, const SetOperationStmt *node);
64
148
  static void _outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out_node, const GrantStmt *node);
149
+ static void _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out_node, const ObjectWithArgs *node);
150
+ static void _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out_node, const AccessPriv *node);
65
151
  static void _outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out_node, const GrantRoleStmt *node);
66
152
  static void _outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out_node, const AlterDefaultPrivilegesStmt *node);
67
- static void _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out_node, const ClosePortalStmt *node);
68
- static void _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out_node, const ClusterStmt *node);
69
153
  static void _outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out_node, const CopyStmt *node);
154
+ static void _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out_node, const VariableSetStmt *node);
155
+ static void _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out_node, const VariableShowStmt *node);
70
156
  static void _outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out_node, const CreateStmt *node);
157
+ static void _outConstraint(OUT_TYPE(Constraint, Constraint) out_node, const Constraint *node);
158
+ static void _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out_node, const CreateTableSpaceStmt *node);
159
+ static void _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out_node, const DropTableSpaceStmt *node);
160
+ static void _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out_node, const AlterTableSpaceOptionsStmt *node);
161
+ static void _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out_node, const AlterTableMoveAllStmt *node);
162
+ static void _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out_node, const CreateExtensionStmt *node);
163
+ static void _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out_node, const AlterExtensionStmt *node);
164
+ static void _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out_node, const AlterExtensionContentsStmt *node);
165
+ static void _outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out_node, const CreateFdwStmt *node);
166
+ static void _outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out_node, const AlterFdwStmt *node);
167
+ static void _outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out_node, const CreateForeignServerStmt *node);
168
+ static void _outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out_node, const AlterForeignServerStmt *node);
169
+ static void _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out_node, const CreateForeignTableStmt *node);
170
+ static void _outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out_node, const CreateUserMappingStmt *node);
171
+ static void _outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out_node, const AlterUserMappingStmt *node);
172
+ static void _outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out_node, const DropUserMappingStmt *node);
173
+ static void _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out_node, const ImportForeignSchemaStmt *node);
174
+ static void _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out_node, const CreatePolicyStmt *node);
175
+ static void _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out_node, const AlterPolicyStmt *node);
176
+ static void _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out_node, const CreateAmStmt *node);
177
+ static void _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out_node, const CreateTrigStmt *node);
178
+ static void _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out_node, const CreateEventTrigStmt *node);
179
+ static void _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out_node, const AlterEventTrigStmt *node);
180
+ static void _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out_node, const CreatePLangStmt *node);
181
+ static void _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out_node, const CreateRoleStmt *node);
182
+ static void _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out_node, const AlterRoleStmt *node);
183
+ static void _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out_node, const AlterRoleSetStmt *node);
184
+ static void _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out_node, const DropRoleStmt *node);
185
+ static void _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out_node, const CreateSeqStmt *node);
186
+ static void _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out_node, const AlterSeqStmt *node);
71
187
  static void _outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out_node, const DefineStmt *node);
188
+ static void _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out_node, const CreateDomainStmt *node);
189
+ static void _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out_node, const CreateOpClassStmt *node);
190
+ static void _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out_node, const CreateOpClassItem *node);
191
+ static void _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out_node, const CreateOpFamilyStmt *node);
192
+ static void _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out_node, const AlterOpFamilyStmt *node);
72
193
  static void _outDropStmt(OUT_TYPE(DropStmt, DropStmt) out_node, const DropStmt *node);
73
194
  static void _outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out_node, const TruncateStmt *node);
74
195
  static void _outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out_node, const CommentStmt *node);
196
+ static void _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out_node, const SecLabelStmt *node);
197
+ static void _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out_node, const DeclareCursorStmt *node);
198
+ static void _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out_node, const ClosePortalStmt *node);
75
199
  static void _outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out_node, const FetchStmt *node);
76
200
  static void _outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out_node, const IndexStmt *node);
201
+ static void _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out_node, const CreateStatsStmt *node);
202
+ static void _outStatsElem(OUT_TYPE(StatsElem, StatsElem) out_node, const StatsElem *node);
203
+ static void _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out_node, const AlterStatsStmt *node);
77
204
  static void _outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out_node, const CreateFunctionStmt *node);
205
+ static void _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out_node, const FunctionParameter *node);
78
206
  static void _outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out_node, const AlterFunctionStmt *node);
79
207
  static void _outDoStmt(OUT_TYPE(DoStmt, DoStmt) out_node, const DoStmt *node);
208
+ static void _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out_node, const InlineCodeBlock *node);
209
+ static void _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out_node, const CallStmt *node);
210
+ static void _outCallContext(OUT_TYPE(CallContext, CallContext) out_node, const CallContext *node);
80
211
  static void _outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out_node, const RenameStmt *node);
212
+ static void _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out_node, const AlterObjectDependsStmt *node);
213
+ static void _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out_node, const AlterObjectSchemaStmt *node);
214
+ static void _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out_node, const AlterOwnerStmt *node);
215
+ static void _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out_node, const AlterOperatorStmt *node);
216
+ static void _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out_node, const AlterTypeStmt *node);
81
217
  static void _outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out_node, const RuleStmt *node);
82
218
  static void _outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out_node, const NotifyStmt *node);
83
219
  static void _outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out_node, const ListenStmt *node);
84
220
  static void _outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out_node, const UnlistenStmt *node);
85
221
  static void _outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out_node, const TransactionStmt *node);
222
+ static void _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out_node, const CompositeTypeStmt *node);
223
+ static void _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out_node, const CreateEnumStmt *node);
224
+ static void _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out_node, const CreateRangeStmt *node);
225
+ static void _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out_node, const AlterEnumStmt *node);
86
226
  static void _outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out_node, const ViewStmt *node);
87
227
  static void _outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out_node, const LoadStmt *node);
88
- static void _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out_node, const CreateDomainStmt *node);
89
228
  static void _outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out_node, const CreatedbStmt *node);
229
+ static void _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out_node, const AlterDatabaseStmt *node);
230
+ static void _outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out_node, const AlterDatabaseRefreshCollStmt *node);
231
+ static void _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out_node, const AlterDatabaseSetStmt *node);
90
232
  static void _outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out_node, const DropdbStmt *node);
233
+ static void _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out_node, const AlterSystemStmt *node);
234
+ static void _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out_node, const ClusterStmt *node);
91
235
  static void _outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out_node, const VacuumStmt *node);
236
+ static void _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out_node, const VacuumRelation *node);
92
237
  static void _outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out_node, const ExplainStmt *node);
93
238
  static void _outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out_node, const CreateTableAsStmt *node);
94
- static void _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out_node, const CreateSeqStmt *node);
95
- static void _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out_node, const AlterSeqStmt *node);
96
- static void _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out_node, const VariableSetStmt *node);
97
- static void _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out_node, const VariableShowStmt *node);
239
+ static void _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out_node, const RefreshMatViewStmt *node);
240
+ static void _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out_node, const CheckPointStmt *node);
98
241
  static void _outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out_node, const DiscardStmt *node);
99
- static void _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out_node, const CreateTrigStmt *node);
100
- static void _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out_node, const CreatePLangStmt *node);
101
- static void _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out_node, const CreateRoleStmt *node);
102
- static void _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out_node, const AlterRoleStmt *node);
103
- static void _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out_node, const DropRoleStmt *node);
104
242
  static void _outLockStmt(OUT_TYPE(LockStmt, LockStmt) out_node, const LockStmt *node);
105
243
  static void _outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out_node, const ConstraintsSetStmt *node);
106
244
  static void _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out_node, const ReindexStmt *node);
107
- static void _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out_node, const CheckPointStmt *node);
108
- static void _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out_node, const CreateSchemaStmt *node);
109
- static void _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out_node, const AlterDatabaseStmt *node);
110
- static void _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out_node, const AlterDatabaseSetStmt *node);
111
- static void _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out_node, const AlterRoleSetStmt *node);
112
245
  static void _outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out_node, const CreateConversionStmt *node);
113
246
  static void _outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out_node, const CreateCastStmt *node);
114
- static void _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out_node, const CreateOpClassStmt *node);
115
- static void _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out_node, const CreateOpFamilyStmt *node);
116
- static void _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out_node, const AlterOpFamilyStmt *node);
247
+ static void _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out_node, const CreateTransformStmt *node);
117
248
  static void _outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out_node, const PrepareStmt *node);
118
249
  static void _outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out_node, const ExecuteStmt *node);
119
250
  static void _outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out_node, const DeallocateStmt *node);
120
- static void _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out_node, const DeclareCursorStmt *node);
121
- static void _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out_node, const CreateTableSpaceStmt *node);
122
- static void _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out_node, const DropTableSpaceStmt *node);
123
- static void _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out_node, const AlterObjectDependsStmt *node);
124
- static void _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out_node, const AlterObjectSchemaStmt *node);
125
- static void _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out_node, const AlterOwnerStmt *node);
126
- static void _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out_node, const AlterOperatorStmt *node);
127
- static void _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out_node, const AlterTypeStmt *node);
128
251
  static void _outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out_node, const DropOwnedStmt *node);
129
252
  static void _outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out_node, const ReassignOwnedStmt *node);
130
- static void _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out_node, const CompositeTypeStmt *node);
131
- static void _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out_node, const CreateEnumStmt *node);
132
- static void _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out_node, const CreateRangeStmt *node);
133
- static void _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out_node, const AlterEnumStmt *node);
134
253
  static void _outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out_node, const AlterTSDictionaryStmt *node);
135
254
  static void _outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out_node, const AlterTSConfigurationStmt *node);
136
- static void _outCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) out_node, const CreateFdwStmt *node);
137
- static void _outAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) out_node, const AlterFdwStmt *node);
138
- static void _outCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) out_node, const CreateForeignServerStmt *node);
139
- static void _outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) out_node, const AlterForeignServerStmt *node);
140
- static void _outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out_node, const CreateUserMappingStmt *node);
141
- static void _outAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) out_node, const AlterUserMappingStmt *node);
142
- static void _outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out_node, const DropUserMappingStmt *node);
143
- static void _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out_node, const AlterTableSpaceOptionsStmt *node);
144
- static void _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out_node, const AlterTableMoveAllStmt *node);
145
- static void _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out_node, const SecLabelStmt *node);
146
- static void _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out_node, const CreateForeignTableStmt *node);
147
- static void _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out_node, const ImportForeignSchemaStmt *node);
148
- static void _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out_node, const CreateExtensionStmt *node);
149
- static void _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out_node, const AlterExtensionStmt *node);
150
- static void _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out_node, const AlterExtensionContentsStmt *node);
151
- static void _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out_node, const CreateEventTrigStmt *node);
152
- static void _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out_node, const AlterEventTrigStmt *node);
153
- static void _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out_node, const RefreshMatViewStmt *node);
154
- static void _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out_node, const ReplicaIdentityStmt *node);
155
- static void _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out_node, const AlterSystemStmt *node);
156
- static void _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out_node, const CreatePolicyStmt *node);
157
- static void _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out_node, const AlterPolicyStmt *node);
158
- static void _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out_node, const CreateTransformStmt *node);
159
- static void _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out_node, const CreateAmStmt *node);
255
+ static void _outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out_node, const PublicationTable *node);
256
+ static void _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out_node, const PublicationObjSpec *node);
160
257
  static void _outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out_node, const CreatePublicationStmt *node);
161
258
  static void _outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out_node, const AlterPublicationStmt *node);
162
259
  static void _outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out_node, const CreateSubscriptionStmt *node);
163
260
  static void _outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out_node, const AlterSubscriptionStmt *node);
164
261
  static void _outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out_node, const DropSubscriptionStmt *node);
165
- static void _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out_node, const CreateStatsStmt *node);
166
- static void _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out_node, const AlterCollationStmt *node);
167
- static void _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out_node, const CallStmt *node);
168
- static void _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out_node, const AlterStatsStmt *node);
169
- static void _outAExpr(OUT_TYPE(A_Expr, AExpr) out_node, const A_Expr *node);
170
- static void _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out_node, const ColumnRef *node);
171
- static void _outParamRef(OUT_TYPE(ParamRef, ParamRef) out_node, const ParamRef *node);
172
- static void _outAConst(OUT_TYPE(A_Const, AConst) out_node, const A_Const *node);
173
- static void _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out_node, const FuncCall *node);
174
- static void _outAStar(OUT_TYPE(A_Star, AStar) out_node, const A_Star *node);
175
- static void _outAIndices(OUT_TYPE(A_Indices, AIndices) out_node, const A_Indices *node);
176
- static void _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out_node, const A_Indirection *node);
177
- static void _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out_node, const A_ArrayExpr *node);
178
- static void _outResTarget(OUT_TYPE(ResTarget, ResTarget) out_node, const ResTarget *node);
179
- static void _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out_node, const MultiAssignRef *node);
180
- static void _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out_node, const TypeCast *node);
181
- static void _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out_node, const CollateClause *node);
182
- static void _outSortBy(OUT_TYPE(SortBy, SortBy) out_node, const SortBy *node);
183
- static void _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out_node, const WindowDef *node);
184
- static void _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out_node, const RangeSubselect *node);
185
- static void _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out_node, const RangeFunction *node);
186
- static void _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out_node, const RangeTableSample *node);
187
- static void _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out_node, const RangeTableFunc *node);
188
- static void _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out_node, const RangeTableFuncCol *node);
189
- static void _outTypeName(OUT_TYPE(TypeName, TypeName) out_node, const TypeName *node);
190
- static void _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out_node, const ColumnDef *node);
191
- static void _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out_node, const IndexElem *node);
192
- static void _outConstraint(OUT_TYPE(Constraint, Constraint) out_node, const Constraint *node);
193
- static void _outDefElem(OUT_TYPE(DefElem, DefElem) out_node, const DefElem *node);
194
- static void _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out_node, const RangeTblEntry *node);
195
- static void _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out_node, const RangeTblFunction *node);
196
- static void _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out_node, const TableSampleClause *node);
197
- static void _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out_node, const WithCheckOption *node);
198
- static void _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out_node, const SortGroupClause *node);
199
- static void _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out_node, const GroupingSet *node);
200
- static void _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out_node, const WindowClause *node);
201
- static void _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out_node, const ObjectWithArgs *node);
202
- static void _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out_node, const AccessPriv *node);
203
- static void _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out_node, const CreateOpClassItem *node);
204
- static void _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out_node, const TableLikeClause *node);
205
- static void _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out_node, const FunctionParameter *node);
206
- static void _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out_node, const LockingClause *node);
207
- static void _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out_node, const RowMarkClause *node);
208
- static void _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out_node, const XmlSerialize *node);
209
- static void _outWithClause(OUT_TYPE(WithClause, WithClause) out_node, const WithClause *node);
210
- static void _outInferClause(OUT_TYPE(InferClause, InferClause) out_node, const InferClause *node);
211
- static void _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out_node, const OnConflictClause *node);
212
- static void _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out_node, const CommonTableExpr *node);
213
- static void _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out_node, const RoleSpec *node);
214
- static void _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out_node, const TriggerTransition *node);
215
- static void _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out_node, const PartitionElem *node);
216
- static void _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out_node, const PartitionSpec *node);
217
- static void _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out_node, const PartitionBoundSpec *node);
218
- static void _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out_node, const PartitionRangeDatum *node);
219
- static void _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out_node, const PartitionCmd *node);
220
- static void _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out_node, const VacuumRelation *node);
221
- static void _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out_node, const InlineCodeBlock *node);
222
- static void _outCallContext(OUT_TYPE(CallContext, CallContext) out_node, const CallContext *node);
223
262
 
224
263
 
225
264
  static void
@@ -244,6 +283,7 @@ _outRangeVar(OUT_TYPE(RangeVar, RangeVar) out, const RangeVar *node)
244
283
  static void
245
284
  _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out, const TableFunc *node)
246
285
  {
286
+ WRITE_ENUM_FIELD(TableFuncType, functype, functype, functype);
247
287
  WRITE_LIST_FIELD(ns_uris, ns_uris, ns_uris);
248
288
  WRITE_LIST_FIELD(ns_names, ns_names, ns_names);
249
289
  WRITE_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
@@ -254,27 +294,37 @@ _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out, const TableFunc *node)
254
294
  WRITE_LIST_FIELD(colcollations, colcollations, colcollations);
255
295
  WRITE_LIST_FIELD(colexprs, colexprs, colexprs);
256
296
  WRITE_LIST_FIELD(coldefexprs, coldefexprs, coldefexprs);
297
+ WRITE_LIST_FIELD(colvalexprs, colvalexprs, colvalexprs);
298
+ WRITE_LIST_FIELD(passingvalexprs, passingvalexprs, passingvalexprs);
257
299
  WRITE_BITMAPSET_FIELD(notnulls, notnulls, notnulls);
300
+ WRITE_NODE_PTR_FIELD(plan, plan, plan);
258
301
  WRITE_INT_FIELD(ordinalitycol, ordinalitycol, ordinalitycol);
259
302
  WRITE_INT_FIELD(location, location, location);
260
303
  }
261
304
 
262
305
  static void
263
- _outExpr(OUT_TYPE(Expr, Expr) out, const Expr *node)
306
+ _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out, const IntoClause *node)
264
307
  {
308
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
309
+ WRITE_LIST_FIELD(col_names, colNames, colNames);
310
+ WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
311
+ WRITE_LIST_FIELD(options, options, options);
312
+ WRITE_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
313
+ WRITE_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
314
+ WRITE_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
315
+ WRITE_BOOL_FIELD(skip_data, skipData, skipData);
265
316
  }
266
317
 
267
318
  static void
268
319
  _outVar(OUT_TYPE(Var, Var) out, const Var *node)
269
320
  {
270
- WRITE_UINT_FIELD(varno, varno, varno);
321
+ WRITE_INT_FIELD(varno, varno, varno);
271
322
  WRITE_INT_FIELD(varattno, varattno, varattno);
272
323
  WRITE_UINT_FIELD(vartype, vartype, vartype);
273
324
  WRITE_INT_FIELD(vartypmod, vartypmod, vartypmod);
274
325
  WRITE_UINT_FIELD(varcollid, varcollid, varcollid);
326
+ WRITE_BITMAPSET_FIELD(varnullingrels, varnullingrels, varnullingrels);
275
327
  WRITE_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup);
276
- WRITE_UINT_FIELD(varnosyn, varnosyn, varnosyn);
277
- WRITE_INT_FIELD(varattnosyn, varattnosyn, varattnosyn);
278
328
  WRITE_INT_FIELD(location, location, location);
279
329
  }
280
330
 
@@ -296,7 +346,6 @@ _outAggref(OUT_TYPE(Aggref, Aggref) out, const Aggref *node)
296
346
  WRITE_UINT_FIELD(aggtype, aggtype, aggtype);
297
347
  WRITE_UINT_FIELD(aggcollid, aggcollid, aggcollid);
298
348
  WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid);
299
- WRITE_UINT_FIELD(aggtranstype, aggtranstype, aggtranstype);
300
349
  WRITE_LIST_FIELD(aggargtypes, aggargtypes, aggargtypes);
301
350
  WRITE_LIST_FIELD(aggdirectargs, aggdirectargs, aggdirectargs);
302
351
  WRITE_LIST_FIELD(args, args, args);
@@ -308,6 +357,8 @@ _outAggref(OUT_TYPE(Aggref, Aggref) out, const Aggref *node)
308
357
  WRITE_CHAR_FIELD(aggkind, aggkind, aggkind);
309
358
  WRITE_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
310
359
  WRITE_ENUM_FIELD(AggSplit, aggsplit, aggsplit, aggsplit);
360
+ WRITE_INT_FIELD(aggno, aggno, aggno);
361
+ WRITE_INT_FIELD(aggtransno, aggtransno, aggtransno);
311
362
  WRITE_INT_FIELD(location, location, location);
312
363
  }
313
364
 
@@ -316,7 +367,6 @@ _outGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) out, const GroupingFunc *n
316
367
  {
317
368
  WRITE_LIST_FIELD(args, args, args);
318
369
  WRITE_LIST_FIELD(refs, refs, refs);
319
- WRITE_LIST_FIELD(cols, cols, cols);
320
370
  WRITE_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
321
371
  WRITE_INT_FIELD(location, location, location);
322
372
  }
@@ -330,17 +380,36 @@ _outWindowFunc(OUT_TYPE(WindowFunc, WindowFunc) out, const WindowFunc *node)
330
380
  WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid);
331
381
  WRITE_LIST_FIELD(args, args, args);
332
382
  WRITE_NODE_PTR_FIELD(aggfilter, aggfilter, aggfilter);
383
+ WRITE_LIST_FIELD(run_condition, runCondition, runCondition);
333
384
  WRITE_UINT_FIELD(winref, winref, winref);
334
385
  WRITE_BOOL_FIELD(winstar, winstar, winstar);
335
386
  WRITE_BOOL_FIELD(winagg, winagg, winagg);
336
387
  WRITE_INT_FIELD(location, location, location);
337
388
  }
338
389
 
390
+ static void
391
+ _outWindowFuncRunCondition(OUT_TYPE(WindowFuncRunCondition, WindowFuncRunCondition) out, const WindowFuncRunCondition *node)
392
+ {
393
+ WRITE_UINT_FIELD(opno, opno, opno);
394
+ WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid);
395
+ WRITE_BOOL_FIELD(wfunc_left, wfunc_left, wfunc_left);
396
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
397
+ }
398
+
399
+ static void
400
+ _outMergeSupportFunc(OUT_TYPE(MergeSupportFunc, MergeSupportFunc) out, const MergeSupportFunc *node)
401
+ {
402
+ WRITE_UINT_FIELD(msftype, msftype, msftype);
403
+ WRITE_UINT_FIELD(msfcollid, msfcollid, msfcollid);
404
+ WRITE_INT_FIELD(location, location, location);
405
+ }
406
+
339
407
  static void
340
408
  _outSubscriptingRef(OUT_TYPE(SubscriptingRef, SubscriptingRef) out, const SubscriptingRef *node)
341
409
  {
342
410
  WRITE_UINT_FIELD(refcontainertype, refcontainertype, refcontainertype);
343
411
  WRITE_UINT_FIELD(refelemtype, refelemtype, refelemtype);
412
+ WRITE_UINT_FIELD(refrestype, refrestype, refrestype);
344
413
  WRITE_INT_FIELD(reftypmod, reftypmod, reftypmod);
345
414
  WRITE_UINT_FIELD(refcollid, refcollid, refcollid);
346
415
  WRITE_LIST_FIELD(refupperindexpr, refupperindexpr, refupperindexpr);
@@ -376,7 +445,6 @@ static void
376
445
  _outOpExpr(OUT_TYPE(OpExpr, OpExpr) out, const OpExpr *node)
377
446
  {
378
447
  WRITE_UINT_FIELD(opno, opno, opno);
379
- WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid);
380
448
  WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype);
381
449
  WRITE_BOOL_FIELD(opretset, opretset, opretset);
382
450
  WRITE_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -389,7 +457,6 @@ static void
389
457
  _outDistinctExpr(OUT_TYPE(DistinctExpr, DistinctExpr) out, const DistinctExpr *node)
390
458
  {
391
459
  WRITE_UINT_FIELD(opno, opno, opno);
392
- WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid);
393
460
  WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype);
394
461
  WRITE_BOOL_FIELD(opretset, opretset, opretset);
395
462
  WRITE_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -402,7 +469,6 @@ static void
402
469
  _outNullIfExpr(OUT_TYPE(NullIfExpr, NullIfExpr) out, const NullIfExpr *node)
403
470
  {
404
471
  WRITE_UINT_FIELD(opno, opno, opno);
405
- WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid);
406
472
  WRITE_UINT_FIELD(opresulttype, opresulttype, opresulttype);
407
473
  WRITE_BOOL_FIELD(opretset, opretset, opretset);
408
474
  WRITE_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -415,7 +481,6 @@ static void
415
481
  _outScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) out, const ScalarArrayOpExpr *node)
416
482
  {
417
483
  WRITE_UINT_FIELD(opno, opno, opno);
418
- WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid);
419
484
  WRITE_BOOL_FIELD(use_or, useOr, useOr);
420
485
  WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid);
421
486
  WRITE_LIST_FIELD(args, args, args);
@@ -634,15 +699,116 @@ _outXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) out, const XmlExpr *node)
634
699
  WRITE_LIST_FIELD(arg_names, arg_names, arg_names);
635
700
  WRITE_LIST_FIELD(args, args, args);
636
701
  WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
702
+ WRITE_BOOL_FIELD(indent, indent, indent);
637
703
  WRITE_UINT_FIELD(type, type, type);
638
704
  WRITE_INT_FIELD(typmod, typmod, typmod);
639
705
  WRITE_INT_FIELD(location, location, location);
640
706
  }
641
707
 
642
708
  static void
643
- _outNullTest(OUT_TYPE(NullTest, NullTest) out, const NullTest *node)
709
+ _outJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) out, const JsonFormat *node)
644
710
  {
645
- WRITE_NODE_PTR_FIELD(arg, arg, arg);
711
+ WRITE_ENUM_FIELD(JsonFormatType, format_type, format_type, format_type);
712
+ WRITE_ENUM_FIELD(JsonEncoding, encoding, encoding, encoding);
713
+ WRITE_INT_FIELD(location, location, location);
714
+ }
715
+
716
+ static void
717
+ _outJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) out, const JsonReturning *node)
718
+ {
719
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
720
+ WRITE_UINT_FIELD(typid, typid, typid);
721
+ WRITE_INT_FIELD(typmod, typmod, typmod);
722
+ }
723
+
724
+ static void
725
+ _outJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) out, const JsonValueExpr *node)
726
+ {
727
+ WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
728
+ WRITE_NODE_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr);
729
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
730
+ }
731
+
732
+ static void
733
+ _outJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) out, const JsonConstructorExpr *node)
734
+ {
735
+ WRITE_ENUM_FIELD(JsonConstructorType, type, type, type);
736
+ WRITE_LIST_FIELD(args, args, args);
737
+ WRITE_NODE_PTR_FIELD(func, func, func);
738
+ WRITE_NODE_PTR_FIELD(coercion, coercion, coercion);
739
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
740
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
741
+ WRITE_BOOL_FIELD(unique, unique, unique);
742
+ WRITE_INT_FIELD(location, location, location);
743
+ }
744
+
745
+ static void
746
+ _outJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) out, const JsonIsPredicate *node)
747
+ {
748
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
749
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
750
+ WRITE_ENUM_FIELD(JsonValueType, item_type, item_type, item_type);
751
+ WRITE_BOOL_FIELD(unique_keys, unique_keys, unique_keys);
752
+ WRITE_INT_FIELD(location, location, location);
753
+ }
754
+
755
+ static void
756
+ _outJsonBehavior(OUT_TYPE(JsonBehavior, JsonBehavior) out, const JsonBehavior *node)
757
+ {
758
+ WRITE_ENUM_FIELD(JsonBehaviorType, btype, btype, btype);
759
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
760
+ WRITE_BOOL_FIELD(coerce, coerce, coerce);
761
+ WRITE_INT_FIELD(location, location, location);
762
+ }
763
+
764
+ static void
765
+ _outJsonExpr(OUT_TYPE(JsonExpr, JsonExpr) out, const JsonExpr *node)
766
+ {
767
+ WRITE_ENUM_FIELD(JsonExprOp, op, op, op);
768
+ WRITE_STRING_FIELD(column_name, column_name, column_name);
769
+ WRITE_NODE_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr);
770
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
771
+ WRITE_NODE_PTR_FIELD(path_spec, path_spec, path_spec);
772
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
773
+ WRITE_LIST_FIELD(passing_names, passing_names, passing_names);
774
+ WRITE_LIST_FIELD(passing_values, passing_values, passing_values);
775
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
776
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
777
+ WRITE_BOOL_FIELD(use_io_coercion, use_io_coercion, use_io_coercion);
778
+ WRITE_BOOL_FIELD(use_json_coercion, use_json_coercion, use_json_coercion);
779
+ WRITE_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
780
+ WRITE_BOOL_FIELD(omit_quotes, omit_quotes, omit_quotes);
781
+ WRITE_UINT_FIELD(collation, collation, collation);
782
+ WRITE_INT_FIELD(location, location, location);
783
+ }
784
+
785
+ static void
786
+ _outJsonTablePath(OUT_TYPE(JsonTablePath, JsonTablePath) out, const JsonTablePath *node)
787
+ {
788
+ WRITE_STRING_FIELD(name, name, name);
789
+ }
790
+
791
+ static void
792
+ _outJsonTablePathScan(OUT_TYPE(JsonTablePathScan, JsonTablePathScan) out, const JsonTablePathScan *node)
793
+ {
794
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonTablePath, json_table_path, path, path, path);
795
+ WRITE_BOOL_FIELD(error_on_error, errorOnError, errorOnError);
796
+ WRITE_NODE_PTR_FIELD(child, child, child);
797
+ WRITE_INT_FIELD(col_min, colMin, colMin);
798
+ WRITE_INT_FIELD(col_max, colMax, colMax);
799
+ }
800
+
801
+ static void
802
+ _outJsonTableSiblingJoin(OUT_TYPE(JsonTableSiblingJoin, JsonTableSiblingJoin) out, const JsonTableSiblingJoin *node)
803
+ {
804
+ WRITE_NODE_PTR_FIELD(lplan, lplan, lplan);
805
+ WRITE_NODE_PTR_FIELD(rplan, rplan, rplan);
806
+ }
807
+
808
+ static void
809
+ _outNullTest(OUT_TYPE(NullTest, NullTest) out, const NullTest *node)
810
+ {
811
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
646
812
  WRITE_ENUM_FIELD(NullTestType, nulltesttype, nulltesttype, nulltesttype);
647
813
  WRITE_BOOL_FIELD(argisrow, argisrow, argisrow);
648
814
  WRITE_INT_FIELD(location, location, location);
@@ -656,6 +822,17 @@ _outBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) out, const BooleanTest *node)
656
822
  WRITE_INT_FIELD(location, location, location);
657
823
  }
658
824
 
825
+ static void
826
+ _outMergeAction(OUT_TYPE(MergeAction, MergeAction) out, const MergeAction *node)
827
+ {
828
+ WRITE_ENUM_FIELD(MergeMatchKind, match_kind, matchKind, matchKind);
829
+ WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType);
830
+ WRITE_ENUM_FIELD(OverridingKind, override, override, override);
831
+ WRITE_NODE_PTR_FIELD(qual, qual, qual);
832
+ WRITE_LIST_FIELD(target_list, targetList, targetList);
833
+ WRITE_LIST_FIELD(update_colnos, updateColnos, updateColnos);
834
+ }
835
+
659
836
  static void
660
837
  _outCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) out, const CoerceToDomain *node)
661
838
  {
@@ -734,6 +911,7 @@ _outJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) out, const JoinExpr *node)
734
911
  WRITE_NODE_PTR_FIELD(larg, larg, larg);
735
912
  WRITE_NODE_PTR_FIELD(rarg, rarg, rarg);
736
913
  WRITE_LIST_FIELD(using_clause, usingClause, usingClause);
914
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
737
915
  WRITE_NODE_PTR_FIELD(quals, quals, quals);
738
916
  WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
739
917
  WRITE_INT_FIELD(rtindex, rtindex, rtindex);
@@ -759,27 +937,6 @@ _outOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) out, const OnConflic
759
937
  WRITE_LIST_FIELD(excl_rel_tlist, exclRelTlist, exclRelTlist);
760
938
  }
761
939
 
762
- static void
763
- _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out, const IntoClause *node)
764
- {
765
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
766
- WRITE_LIST_FIELD(col_names, colNames, colNames);
767
- WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
768
- WRITE_LIST_FIELD(options, options, options);
769
- WRITE_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
770
- WRITE_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
771
- WRITE_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
772
- WRITE_BOOL_FIELD(skip_data, skipData, skipData);
773
- }
774
-
775
- static void
776
- _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out, const RawStmt *node)
777
- {
778
- WRITE_NODE_PTR_FIELD(stmt, stmt, stmt);
779
- WRITE_INT_FIELD(stmt_location, stmt_location, stmt_location);
780
- WRITE_INT_FIELD(stmt_len, stmt_len, stmt_len);
781
- }
782
-
783
940
  static void
784
941
  _outQuery(OUT_TYPE(Query, Query) out, const Query *node)
785
942
  {
@@ -797,14 +954,20 @@ _outQuery(OUT_TYPE(Query, Query) out, const Query *node)
797
954
  WRITE_BOOL_FIELD(has_modifying_cte, hasModifyingCTE, hasModifyingCTE);
798
955
  WRITE_BOOL_FIELD(has_for_update, hasForUpdate, hasForUpdate);
799
956
  WRITE_BOOL_FIELD(has_row_security, hasRowSecurity, hasRowSecurity);
957
+ WRITE_BOOL_FIELD(is_return, isReturn, isReturn);
800
958
  WRITE_LIST_FIELD(cte_list, cteList, cteList);
801
959
  WRITE_LIST_FIELD(rtable, rtable, rtable);
960
+ WRITE_LIST_FIELD(rteperminfos, rteperminfos, rteperminfos);
802
961
  WRITE_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree);
962
+ WRITE_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList);
963
+ WRITE_INT_FIELD(merge_target_relation, mergeTargetRelation, mergeTargetRelation);
964
+ WRITE_NODE_PTR_FIELD(merge_join_condition, mergeJoinCondition, mergeJoinCondition);
803
965
  WRITE_LIST_FIELD(target_list, targetList, targetList);
804
966
  WRITE_ENUM_FIELD(OverridingKind, override, override, override);
805
967
  WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictExpr, on_conflict_expr, on_conflict, onConflict, onConflict);
806
968
  WRITE_LIST_FIELD(returning_list, returningList, returningList);
807
969
  WRITE_LIST_FIELD(group_clause, groupClause, groupClause);
970
+ WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
808
971
  WRITE_LIST_FIELD(grouping_sets, groupingSets, groupingSets);
809
972
  WRITE_NODE_PTR_FIELD(having_qual, havingQual, havingQual);
810
973
  WRITE_LIST_FIELD(window_clause, windowClause, windowClause);
@@ -822,755 +985,1042 @@ _outQuery(OUT_TYPE(Query, Query) out, const Query *node)
822
985
  }
823
986
 
824
987
  static void
825
- _outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out, const InsertStmt *node)
988
+ _outTypeName(OUT_TYPE(TypeName, TypeName) out, const TypeName *node)
826
989
  {
827
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
828
- WRITE_LIST_FIELD(cols, cols, cols);
829
- WRITE_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
830
- WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
831
- WRITE_LIST_FIELD(returning_list, returningList, returningList);
832
- WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
833
- WRITE_ENUM_FIELD(OverridingKind, override, override, override);
990
+ WRITE_LIST_FIELD(names, names, names);
991
+ WRITE_UINT_FIELD(type_oid, typeOid, typeOid);
992
+ WRITE_BOOL_FIELD(setof, setof, setof);
993
+ WRITE_BOOL_FIELD(pct_type, pct_type, pct_type);
994
+ WRITE_LIST_FIELD(typmods, typmods, typmods);
995
+ WRITE_INT_FIELD(typemod, typemod, typemod);
996
+ WRITE_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
997
+ WRITE_INT_FIELD(location, location, location);
834
998
  }
835
999
 
836
1000
  static void
837
- _outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out, const DeleteStmt *node)
1001
+ _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out, const ColumnRef *node)
838
1002
  {
839
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
840
- WRITE_LIST_FIELD(using_clause, usingClause, usingClause);
841
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
842
- WRITE_LIST_FIELD(returning_list, returningList, returningList);
843
- WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1003
+ WRITE_LIST_FIELD(fields, fields, fields);
1004
+ WRITE_INT_FIELD(location, location, location);
844
1005
  }
845
1006
 
846
1007
  static void
847
- _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out, const UpdateStmt *node)
1008
+ _outParamRef(OUT_TYPE(ParamRef, ParamRef) out, const ParamRef *node)
848
1009
  {
849
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
850
- WRITE_LIST_FIELD(target_list, targetList, targetList);
851
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
852
- WRITE_LIST_FIELD(from_clause, fromClause, fromClause);
853
- WRITE_LIST_FIELD(returning_list, returningList, returningList);
854
- WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1010
+ WRITE_INT_FIELD(number, number, number);
1011
+ WRITE_INT_FIELD(location, location, location);
855
1012
  }
856
1013
 
857
1014
  static void
858
- _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node)
1015
+ _outAExpr(OUT_TYPE(A_Expr, AExpr) out, const A_Expr *node)
859
1016
  {
860
- WRITE_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
861
- WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
862
- WRITE_LIST_FIELD(target_list, targetList, targetList);
863
- WRITE_LIST_FIELD(from_clause, fromClause, fromClause);
864
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
865
- WRITE_LIST_FIELD(group_clause, groupClause, groupClause);
866
- WRITE_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
867
- WRITE_LIST_FIELD(window_clause, windowClause, windowClause);
868
- WRITE_LIST_FIELD(values_lists, valuesLists, valuesLists);
869
- WRITE_LIST_FIELD(sort_clause, sortClause, sortClause);
870
- WRITE_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
871
- WRITE_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
872
- WRITE_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
873
- WRITE_LIST_FIELD(locking_clause, lockingClause, lockingClause);
874
- WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
875
- WRITE_ENUM_FIELD(SetOperation, op, op, op);
876
- WRITE_BOOL_FIELD(all, all, all);
877
- WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
878
- WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1017
+ WRITE_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
1018
+ WRITE_LIST_FIELD(name, name, name);
1019
+ WRITE_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
1020
+ WRITE_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
1021
+ WRITE_INT_FIELD(location, location, location);
879
1022
  }
880
1023
 
881
1024
  static void
882
- _outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out, const AlterTableStmt *node)
1025
+ _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out, const TypeCast *node)
883
1026
  {
884
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
885
- WRITE_LIST_FIELD(cmds, cmds, cmds);
886
- WRITE_ENUM_FIELD(ObjectType, relkind, relkind, relkind);
887
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1027
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
1028
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1029
+ WRITE_INT_FIELD(location, location, location);
888
1030
  }
889
1031
 
890
1032
  static void
891
- _outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out, const AlterTableCmd *node)
1033
+ _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out, const CollateClause *node)
892
1034
  {
893
- WRITE_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
894
- WRITE_STRING_FIELD(name, name, name);
895
- WRITE_INT_FIELD(num, num, num);
896
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
897
- WRITE_NODE_PTR_FIELD(def, def, def);
898
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
899
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
900
- WRITE_BOOL_FIELD(recurse, recurse, recurse);
1035
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
1036
+ WRITE_LIST_FIELD(collname, collname, collname);
1037
+ WRITE_INT_FIELD(location, location, location);
901
1038
  }
902
1039
 
903
1040
  static void
904
- _outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out, const AlterDomainStmt *node)
1041
+ _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out, const RoleSpec *node)
905
1042
  {
906
- WRITE_CHAR_FIELD(subtype, subtype, subtype);
907
- WRITE_LIST_FIELD(type_name, typeName, typeName);
908
- WRITE_STRING_FIELD(name, name, name);
909
- WRITE_NODE_PTR_FIELD(def, def, def);
910
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
911
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1043
+ WRITE_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
1044
+ WRITE_STRING_FIELD(rolename, rolename, rolename);
1045
+ WRITE_INT_FIELD(location, location, location);
912
1046
  }
913
1047
 
914
1048
  static void
915
- _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out, const SetOperationStmt *node)
1049
+ _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node)
916
1050
  {
917
- WRITE_ENUM_FIELD(SetOperation, op, op, op);
918
- WRITE_BOOL_FIELD(all, all, all);
919
- WRITE_NODE_PTR_FIELD(larg, larg, larg);
920
- WRITE_NODE_PTR_FIELD(rarg, rarg, rarg);
921
- WRITE_LIST_FIELD(col_types, colTypes, colTypes);
922
- WRITE_LIST_FIELD(col_typmods, colTypmods, colTypmods);
923
- WRITE_LIST_FIELD(col_collations, colCollations, colCollations);
924
- WRITE_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1051
+ WRITE_LIST_FIELD(funcname, funcname, funcname);
1052
+ WRITE_LIST_FIELD(args, args, args);
1053
+ WRITE_LIST_FIELD(agg_order, agg_order, agg_order);
1054
+ WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1055
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1056
+ WRITE_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
1057
+ WRITE_BOOL_FIELD(agg_star, agg_star, agg_star);
1058
+ WRITE_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
1059
+ WRITE_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
1060
+ WRITE_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat);
1061
+ WRITE_INT_FIELD(location, location, location);
925
1062
  }
926
1063
 
927
1064
  static void
928
- _outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out, const GrantStmt *node)
1065
+ _outAStar(OUT_TYPE(A_Star, AStar) out, const A_Star *node)
929
1066
  {
930
- WRITE_BOOL_FIELD(is_grant, is_grant, is_grant);
931
- WRITE_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
932
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
933
- WRITE_LIST_FIELD(objects, objects, objects);
934
- WRITE_LIST_FIELD(privileges, privileges, privileges);
935
- WRITE_LIST_FIELD(grantees, grantees, grantees);
936
- WRITE_BOOL_FIELD(grant_option, grant_option, grant_option);
937
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
938
1067
  }
939
1068
 
940
1069
  static void
941
- _outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out, const GrantRoleStmt *node)
1070
+ _outAIndices(OUT_TYPE(A_Indices, AIndices) out, const A_Indices *node)
942
1071
  {
943
- WRITE_LIST_FIELD(granted_roles, granted_roles, granted_roles);
944
- WRITE_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
945
- WRITE_BOOL_FIELD(is_grant, is_grant, is_grant);
946
- WRITE_BOOL_FIELD(admin_opt, admin_opt, admin_opt);
947
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
948
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1072
+ WRITE_BOOL_FIELD(is_slice, is_slice, is_slice);
1073
+ WRITE_NODE_PTR_FIELD(lidx, lidx, lidx);
1074
+ WRITE_NODE_PTR_FIELD(uidx, uidx, uidx);
949
1075
  }
950
1076
 
951
1077
  static void
952
- _outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out, const AlterDefaultPrivilegesStmt *node)
1078
+ _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out, const A_Indirection *node)
953
1079
  {
954
- WRITE_LIST_FIELD(options, options, options);
955
- WRITE_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1080
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
1081
+ WRITE_LIST_FIELD(indirection, indirection, indirection);
956
1082
  }
957
1083
 
958
1084
  static void
959
- _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out, const ClosePortalStmt *node)
1085
+ _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out, const A_ArrayExpr *node)
960
1086
  {
961
- WRITE_STRING_FIELD(portalname, portalname, portalname);
1087
+ WRITE_LIST_FIELD(elements, elements, elements);
1088
+ WRITE_INT_FIELD(location, location, location);
962
1089
  }
963
1090
 
964
1091
  static void
965
- _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out, const ClusterStmt *node)
1092
+ _outResTarget(OUT_TYPE(ResTarget, ResTarget) out, const ResTarget *node)
966
1093
  {
967
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
968
- WRITE_STRING_FIELD(indexname, indexname, indexname);
969
- WRITE_INT_FIELD(options, options, options);
1094
+ WRITE_STRING_FIELD(name, name, name);
1095
+ WRITE_LIST_FIELD(indirection, indirection, indirection);
1096
+ WRITE_NODE_PTR_FIELD(val, val, val);
1097
+ WRITE_INT_FIELD(location, location, location);
970
1098
  }
971
1099
 
972
1100
  static void
973
- _outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out, const CopyStmt *node)
1101
+ _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out, const MultiAssignRef *node)
974
1102
  {
975
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
976
- WRITE_NODE_PTR_FIELD(query, query, query);
977
- WRITE_LIST_FIELD(attlist, attlist, attlist);
978
- WRITE_BOOL_FIELD(is_from, is_from, is_from);
979
- WRITE_BOOL_FIELD(is_program, is_program, is_program);
980
- WRITE_STRING_FIELD(filename, filename, filename);
981
- WRITE_LIST_FIELD(options, options, options);
982
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1103
+ WRITE_NODE_PTR_FIELD(source, source, source);
1104
+ WRITE_INT_FIELD(colno, colno, colno);
1105
+ WRITE_INT_FIELD(ncolumns, ncolumns, ncolumns);
983
1106
  }
984
1107
 
985
1108
  static void
986
- _outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out, const CreateStmt *node)
1109
+ _outSortBy(OUT_TYPE(SortBy, SortBy) out, const SortBy *node)
987
1110
  {
988
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
989
- WRITE_LIST_FIELD(table_elts, tableElts, tableElts);
990
- WRITE_LIST_FIELD(inh_relations, inhRelations, inhRelations);
991
- WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
992
- WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
993
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
994
- WRITE_LIST_FIELD(constraints, constraints, constraints);
995
- WRITE_LIST_FIELD(options, options, options);
996
- WRITE_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
997
- WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
998
- WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
999
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1111
+ WRITE_NODE_PTR_FIELD(node, node, node);
1112
+ WRITE_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
1113
+ WRITE_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
1114
+ WRITE_LIST_FIELD(use_op, useOp, useOp);
1115
+ WRITE_INT_FIELD(location, location, location);
1000
1116
  }
1001
1117
 
1002
1118
  static void
1003
- _outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out, const DefineStmt *node)
1119
+ _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out, const WindowDef *node)
1004
1120
  {
1005
- WRITE_ENUM_FIELD(ObjectType, kind, kind, kind);
1006
- WRITE_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
1007
- WRITE_LIST_FIELD(defnames, defnames, defnames);
1008
- WRITE_LIST_FIELD(args, args, args);
1009
- WRITE_LIST_FIELD(definition, definition, definition);
1010
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1011
- WRITE_BOOL_FIELD(replace, replace, replace);
1121
+ WRITE_STRING_FIELD(name, name, name);
1122
+ WRITE_STRING_FIELD(refname, refname, refname);
1123
+ WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1124
+ WRITE_LIST_FIELD(order_clause, orderClause, orderClause);
1125
+ WRITE_INT_FIELD(frame_options, frameOptions, frameOptions);
1126
+ WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1127
+ WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1128
+ WRITE_INT_FIELD(location, location, location);
1012
1129
  }
1013
1130
 
1014
1131
  static void
1015
- _outDropStmt(OUT_TYPE(DropStmt, DropStmt) out, const DropStmt *node)
1132
+ _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out, const RangeSubselect *node)
1016
1133
  {
1017
- WRITE_LIST_FIELD(objects, objects, objects);
1018
- WRITE_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
1019
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1020
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1021
- WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
1134
+ WRITE_BOOL_FIELD(lateral, lateral, lateral);
1135
+ WRITE_NODE_PTR_FIELD(subquery, subquery, subquery);
1136
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1022
1137
  }
1023
1138
 
1024
1139
  static void
1025
- _outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out, const TruncateStmt *node)
1140
+ _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out, const RangeFunction *node)
1026
1141
  {
1027
- WRITE_LIST_FIELD(relations, relations, relations);
1028
- WRITE_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
1029
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1142
+ WRITE_BOOL_FIELD(lateral, lateral, lateral);
1143
+ WRITE_BOOL_FIELD(ordinality, ordinality, ordinality);
1144
+ WRITE_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
1145
+ WRITE_LIST_FIELD(functions, functions, functions);
1146
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1147
+ WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1030
1148
  }
1031
1149
 
1032
1150
  static void
1033
- _outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out, const CommentStmt *node)
1151
+ _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out, const RangeTableFunc *node)
1034
1152
  {
1035
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1036
- WRITE_NODE_PTR_FIELD(object, object, object);
1037
- WRITE_STRING_FIELD(comment, comment, comment);
1153
+ WRITE_BOOL_FIELD(lateral, lateral, lateral);
1154
+ WRITE_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
1155
+ WRITE_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
1156
+ WRITE_LIST_FIELD(namespaces, namespaces, namespaces);
1157
+ WRITE_LIST_FIELD(columns, columns, columns);
1158
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1159
+ WRITE_INT_FIELD(location, location, location);
1038
1160
  }
1039
1161
 
1040
1162
  static void
1041
- _outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out, const FetchStmt *node)
1163
+ _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out, const RangeTableFuncCol *node)
1042
1164
  {
1043
- WRITE_ENUM_FIELD(FetchDirection, direction, direction, direction);
1044
- WRITE_LONG_FIELD(how_many, howMany, howMany);
1045
- WRITE_STRING_FIELD(portalname, portalname, portalname);
1046
- WRITE_BOOL_FIELD(ismove, ismove, ismove);
1165
+ WRITE_STRING_FIELD(colname, colname, colname);
1166
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1167
+ WRITE_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
1168
+ WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1169
+ WRITE_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
1170
+ WRITE_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
1171
+ WRITE_INT_FIELD(location, location, location);
1047
1172
  }
1048
1173
 
1049
1174
  static void
1050
- _outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out, const IndexStmt *node)
1175
+ _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out, const RangeTableSample *node)
1176
+ {
1177
+ WRITE_NODE_PTR_FIELD(relation, relation, relation);
1178
+ WRITE_LIST_FIELD(method, method, method);
1179
+ WRITE_LIST_FIELD(args, args, args);
1180
+ WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
1181
+ WRITE_INT_FIELD(location, location, location);
1182
+ }
1183
+
1184
+ static void
1185
+ _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out, const ColumnDef *node)
1186
+ {
1187
+ WRITE_STRING_FIELD(colname, colname, colname);
1188
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1189
+ WRITE_STRING_FIELD(compression, compression, compression);
1190
+ WRITE_INT_FIELD(inhcount, inhcount, inhcount);
1191
+ WRITE_BOOL_FIELD(is_local, is_local, is_local);
1192
+ WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1193
+ WRITE_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
1194
+ WRITE_CHAR_FIELD(storage, storage, storage);
1195
+ WRITE_STRING_FIELD(storage_name, storage_name, storage_name);
1196
+ WRITE_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
1197
+ WRITE_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
1198
+ WRITE_CHAR_FIELD(identity, identity, identity);
1199
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
1200
+ WRITE_CHAR_FIELD(generated, generated, generated);
1201
+ WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1202
+ WRITE_UINT_FIELD(coll_oid, collOid, collOid);
1203
+ WRITE_LIST_FIELD(constraints, constraints, constraints);
1204
+ WRITE_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
1205
+ WRITE_INT_FIELD(location, location, location);
1206
+ }
1207
+
1208
+ static void
1209
+ _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out, const TableLikeClause *node)
1051
1210
  {
1052
- WRITE_STRING_FIELD(idxname, idxname, idxname);
1053
1211
  WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1054
- WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
1055
- WRITE_STRING_FIELD(table_space, tableSpace, tableSpace);
1056
- WRITE_LIST_FIELD(index_params, indexParams, indexParams);
1057
- WRITE_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
1058
- WRITE_LIST_FIELD(options, options, options);
1059
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1060
- WRITE_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
1061
- WRITE_STRING_FIELD(idxcomment, idxcomment, idxcomment);
1062
- WRITE_UINT_FIELD(index_oid, indexOid, indexOid);
1063
- WRITE_UINT_FIELD(old_node, oldNode, oldNode);
1064
- WRITE_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
1065
- WRITE_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid);
1066
- WRITE_BOOL_FIELD(unique, unique, unique);
1067
- WRITE_BOOL_FIELD(primary, primary, primary);
1068
- WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1069
- WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
1070
- WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1071
- WRITE_BOOL_FIELD(transformed, transformed, transformed);
1212
+ WRITE_UINT_FIELD(options, options, options);
1213
+ WRITE_UINT_FIELD(relation_oid, relationOid, relationOid);
1214
+ }
1215
+
1216
+ static void
1217
+ _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out, const IndexElem *node)
1218
+ {
1219
+ WRITE_STRING_FIELD(name, name, name);
1220
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
1221
+ WRITE_STRING_FIELD(indexcolname, indexcolname, indexcolname);
1222
+ WRITE_LIST_FIELD(collation, collation, collation);
1223
+ WRITE_LIST_FIELD(opclass, opclass, opclass);
1224
+ WRITE_LIST_FIELD(opclassopts, opclassopts, opclassopts);
1225
+ WRITE_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
1226
+ WRITE_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
1227
+ }
1228
+
1229
+ static void
1230
+ _outDefElem(OUT_TYPE(DefElem, DefElem) out, const DefElem *node)
1231
+ {
1232
+ WRITE_STRING_FIELD(defnamespace, defnamespace, defnamespace);
1233
+ WRITE_STRING_FIELD(defname, defname, defname);
1234
+ WRITE_NODE_PTR_FIELD(arg, arg, arg);
1235
+ WRITE_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
1236
+ WRITE_INT_FIELD(location, location, location);
1237
+ }
1238
+
1239
+ static void
1240
+ _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out, const LockingClause *node)
1241
+ {
1242
+ WRITE_LIST_FIELD(locked_rels, lockedRels, lockedRels);
1243
+ WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1244
+ WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1245
+ }
1246
+
1247
+ static void
1248
+ _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out, const XmlSerialize *node)
1249
+ {
1250
+ WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
1251
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
1252
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1253
+ WRITE_BOOL_FIELD(indent, indent, indent);
1254
+ WRITE_INT_FIELD(location, location, location);
1255
+ }
1256
+
1257
+ static void
1258
+ _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out, const PartitionElem *node)
1259
+ {
1260
+ WRITE_STRING_FIELD(name, name, name);
1261
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
1262
+ WRITE_LIST_FIELD(collation, collation, collation);
1263
+ WRITE_LIST_FIELD(opclass, opclass, opclass);
1264
+ WRITE_INT_FIELD(location, location, location);
1265
+ }
1266
+
1267
+ static void
1268
+ _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out, const PartitionSpec *node)
1269
+ {
1270
+ WRITE_ENUM_FIELD(PartitionStrategy, strategy, strategy, strategy);
1271
+ WRITE_LIST_FIELD(part_params, partParams, partParams);
1272
+ WRITE_INT_FIELD(location, location, location);
1273
+ }
1274
+
1275
+ static void
1276
+ _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out, const PartitionBoundSpec *node)
1277
+ {
1278
+ WRITE_CHAR_FIELD(strategy, strategy, strategy);
1279
+ WRITE_BOOL_FIELD(is_default, is_default, is_default);
1280
+ WRITE_INT_FIELD(modulus, modulus, modulus);
1281
+ WRITE_INT_FIELD(remainder, remainder, remainder);
1282
+ WRITE_LIST_FIELD(listdatums, listdatums, listdatums);
1283
+ WRITE_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
1284
+ WRITE_LIST_FIELD(upperdatums, upperdatums, upperdatums);
1285
+ WRITE_INT_FIELD(location, location, location);
1286
+ }
1287
+
1288
+ static void
1289
+ _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out, const PartitionRangeDatum *node)
1290
+ {
1291
+ WRITE_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
1292
+ WRITE_NODE_PTR_FIELD(value, value, value);
1293
+ WRITE_INT_FIELD(location, location, location);
1294
+ }
1295
+
1296
+ static void
1297
+ _outSinglePartitionSpec(OUT_TYPE(SinglePartitionSpec, SinglePartitionSpec) out, const SinglePartitionSpec *node)
1298
+ {
1299
+ }
1300
+
1301
+ static void
1302
+ _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out, const PartitionCmd *node)
1303
+ {
1304
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
1305
+ WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
1072
1306
  WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
1073
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1074
- WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
1075
1307
  }
1076
1308
 
1077
1309
  static void
1078
- _outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out, const CreateFunctionStmt *node)
1310
+ _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out, const RangeTblEntry *node)
1079
1311
  {
1080
- WRITE_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
1081
- WRITE_BOOL_FIELD(replace, replace, replace);
1082
- WRITE_LIST_FIELD(funcname, funcname, funcname);
1083
- WRITE_LIST_FIELD(parameters, parameters, parameters);
1084
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
1085
- WRITE_LIST_FIELD(options, options, options);
1312
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1313
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
1314
+ WRITE_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
1315
+ WRITE_UINT_FIELD(relid, relid, relid);
1316
+ WRITE_BOOL_FIELD(inh, inh, inh);
1317
+ WRITE_CHAR_FIELD(relkind, relkind, relkind);
1318
+ WRITE_INT_FIELD(rellockmode, rellockmode, rellockmode);
1319
+ WRITE_UINT_FIELD(perminfoindex, perminfoindex, perminfoindex);
1320
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
1321
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
1322
+ WRITE_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
1323
+ WRITE_ENUM_FIELD(JoinType, jointype, jointype, jointype);
1324
+ WRITE_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
1325
+ WRITE_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
1326
+ WRITE_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
1327
+ WRITE_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
1328
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
1329
+ WRITE_LIST_FIELD(functions, functions, functions);
1330
+ WRITE_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
1331
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
1332
+ WRITE_LIST_FIELD(values_lists, values_lists, values_lists);
1333
+ WRITE_STRING_FIELD(ctename, ctename, ctename);
1334
+ WRITE_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
1335
+ WRITE_BOOL_FIELD(self_reference, self_reference, self_reference);
1336
+ WRITE_LIST_FIELD(coltypes, coltypes, coltypes);
1337
+ WRITE_LIST_FIELD(coltypmods, coltypmods, coltypmods);
1338
+ WRITE_LIST_FIELD(colcollations, colcollations, colcollations);
1339
+ WRITE_STRING_FIELD(enrname, enrname, enrname);
1340
+ WRITE_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
1341
+ WRITE_BOOL_FIELD(lateral, lateral, lateral);
1342
+ WRITE_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
1343
+ WRITE_LIST_FIELD(security_quals, securityQuals, securityQuals);
1086
1344
  }
1087
1345
 
1088
1346
  static void
1089
- _outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out, const AlterFunctionStmt *node)
1347
+ _outRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) out, const RTEPermissionInfo *node)
1090
1348
  {
1091
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1092
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1093
- WRITE_LIST_FIELD(actions, actions, actions);
1349
+ WRITE_UINT_FIELD(relid, relid, relid);
1350
+ WRITE_BOOL_FIELD(inh, inh, inh);
1351
+ WRITE_UINT64_FIELD(required_perms, requiredPerms, requiredPerms);
1352
+ WRITE_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
1353
+ WRITE_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
1354
+ WRITE_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
1355
+ WRITE_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
1094
1356
  }
1095
1357
 
1096
1358
  static void
1097
- _outDoStmt(OUT_TYPE(DoStmt, DoStmt) out, const DoStmt *node)
1359
+ _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out, const RangeTblFunction *node)
1360
+ {
1361
+ WRITE_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
1362
+ WRITE_INT_FIELD(funccolcount, funccolcount, funccolcount);
1363
+ WRITE_LIST_FIELD(funccolnames, funccolnames, funccolnames);
1364
+ WRITE_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
1365
+ WRITE_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
1366
+ WRITE_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
1367
+ WRITE_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
1368
+ }
1369
+
1370
+ static void
1371
+ _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out, const TableSampleClause *node)
1098
1372
  {
1373
+ WRITE_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
1099
1374
  WRITE_LIST_FIELD(args, args, args);
1375
+ WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
1100
1376
  }
1101
1377
 
1102
1378
  static void
1103
- _outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out, const RenameStmt *node)
1379
+ _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out, const WithCheckOption *node)
1104
1380
  {
1105
- WRITE_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
1106
- WRITE_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
1107
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1108
- WRITE_NODE_PTR_FIELD(object, object, object);
1109
- WRITE_STRING_FIELD(subname, subname, subname);
1110
- WRITE_STRING_FIELD(newname, newname, newname);
1111
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1112
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1381
+ WRITE_ENUM_FIELD(WCOKind, kind, kind, kind);
1382
+ WRITE_STRING_FIELD(relname, relname, relname);
1383
+ WRITE_STRING_FIELD(polname, polname, polname);
1384
+ WRITE_NODE_PTR_FIELD(qual, qual, qual);
1385
+ WRITE_BOOL_FIELD(cascaded, cascaded, cascaded);
1113
1386
  }
1114
1387
 
1115
1388
  static void
1116
- _outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out, const RuleStmt *node)
1389
+ _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out, const SortGroupClause *node)
1117
1390
  {
1118
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1119
- WRITE_STRING_FIELD(rulename, rulename, rulename);
1120
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1121
- WRITE_ENUM_FIELD(CmdType, event, event, event);
1122
- WRITE_BOOL_FIELD(instead, instead, instead);
1123
- WRITE_LIST_FIELD(actions, actions, actions);
1124
- WRITE_BOOL_FIELD(replace, replace, replace);
1391
+ WRITE_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
1392
+ WRITE_UINT_FIELD(eqop, eqop, eqop);
1393
+ WRITE_UINT_FIELD(sortop, sortop, sortop);
1394
+ WRITE_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
1395
+ WRITE_BOOL_FIELD(hashable, hashable, hashable);
1125
1396
  }
1126
1397
 
1127
1398
  static void
1128
- _outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out, const NotifyStmt *node)
1399
+ _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out, const GroupingSet *node)
1129
1400
  {
1130
- WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
1131
- WRITE_STRING_FIELD(payload, payload, payload);
1401
+ WRITE_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
1402
+ WRITE_LIST_FIELD(content, content, content);
1403
+ WRITE_INT_FIELD(location, location, location);
1132
1404
  }
1133
1405
 
1134
1406
  static void
1135
- _outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out, const ListenStmt *node)
1407
+ _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out, const WindowClause *node)
1136
1408
  {
1137
- WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
1409
+ WRITE_STRING_FIELD(name, name, name);
1410
+ WRITE_STRING_FIELD(refname, refname, refname);
1411
+ WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1412
+ WRITE_LIST_FIELD(order_clause, orderClause, orderClause);
1413
+ WRITE_INT_FIELD(frame_options, frameOptions, frameOptions);
1414
+ WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1415
+ WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1416
+ WRITE_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
1417
+ WRITE_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
1418
+ WRITE_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
1419
+ WRITE_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
1420
+ WRITE_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
1421
+ WRITE_UINT_FIELD(winref, winref, winref);
1422
+ WRITE_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
1138
1423
  }
1139
1424
 
1140
1425
  static void
1141
- _outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out, const UnlistenStmt *node)
1426
+ _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out, const RowMarkClause *node)
1142
1427
  {
1143
- WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
1428
+ WRITE_UINT_FIELD(rti, rti, rti);
1429
+ WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1430
+ WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1431
+ WRITE_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
1144
1432
  }
1145
1433
 
1146
1434
  static void
1147
- _outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out, const TransactionStmt *node)
1435
+ _outWithClause(OUT_TYPE(WithClause, WithClause) out, const WithClause *node)
1148
1436
  {
1149
- WRITE_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
1150
- WRITE_LIST_FIELD(options, options, options);
1151
- WRITE_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
1152
- WRITE_STRING_FIELD(gid, gid, gid);
1153
- WRITE_BOOL_FIELD(chain, chain, chain);
1437
+ WRITE_LIST_FIELD(ctes, ctes, ctes);
1438
+ WRITE_BOOL_FIELD(recursive, recursive, recursive);
1439
+ WRITE_INT_FIELD(location, location, location);
1154
1440
  }
1155
1441
 
1156
1442
  static void
1157
- _outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out, const ViewStmt *node)
1443
+ _outInferClause(OUT_TYPE(InferClause, InferClause) out, const InferClause *node)
1158
1444
  {
1159
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
1160
- WRITE_LIST_FIELD(aliases, aliases, aliases);
1161
- WRITE_NODE_PTR_FIELD(query, query, query);
1162
- WRITE_BOOL_FIELD(replace, replace, replace);
1163
- WRITE_LIST_FIELD(options, options, options);
1164
- WRITE_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
1445
+ WRITE_LIST_FIELD(index_elems, indexElems, indexElems);
1446
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1447
+ WRITE_STRING_FIELD(conname, conname, conname);
1448
+ WRITE_INT_FIELD(location, location, location);
1165
1449
  }
1166
1450
 
1167
1451
  static void
1168
- _outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out, const LoadStmt *node)
1452
+ _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out, const OnConflictClause *node)
1169
1453
  {
1170
- WRITE_STRING_FIELD(filename, filename, filename);
1454
+ WRITE_ENUM_FIELD(OnConflictAction, action, action, action);
1455
+ WRITE_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
1456
+ WRITE_LIST_FIELD(target_list, targetList, targetList);
1457
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1458
+ WRITE_INT_FIELD(location, location, location);
1171
1459
  }
1172
1460
 
1173
1461
  static void
1174
- _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out, const CreateDomainStmt *node)
1462
+ _outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out, const CTESearchClause *node)
1175
1463
  {
1176
- WRITE_LIST_FIELD(domainname, domainname, domainname);
1177
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1178
- WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1179
- WRITE_LIST_FIELD(constraints, constraints, constraints);
1464
+ WRITE_LIST_FIELD(search_col_list, search_col_list, search_col_list);
1465
+ WRITE_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first);
1466
+ WRITE_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column);
1467
+ WRITE_INT_FIELD(location, location, location);
1180
1468
  }
1181
1469
 
1182
1470
  static void
1183
- _outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out, const CreatedbStmt *node)
1471
+ _outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out, const CTECycleClause *node)
1184
1472
  {
1185
- WRITE_STRING_FIELD(dbname, dbname, dbname);
1186
- WRITE_LIST_FIELD(options, options, options);
1473
+ WRITE_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list);
1474
+ WRITE_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column);
1475
+ WRITE_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value);
1476
+ WRITE_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default);
1477
+ WRITE_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column);
1478
+ WRITE_INT_FIELD(location, location, location);
1479
+ WRITE_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type);
1480
+ WRITE_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod);
1481
+ WRITE_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation);
1482
+ WRITE_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop);
1187
1483
  }
1188
1484
 
1189
1485
  static void
1190
- _outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out, const DropdbStmt *node)
1486
+ _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const CommonTableExpr *node)
1191
1487
  {
1192
- WRITE_STRING_FIELD(dbname, dbname, dbname);
1193
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1194
- WRITE_LIST_FIELD(options, options, options);
1488
+ WRITE_STRING_FIELD(ctename, ctename, ctename);
1489
+ WRITE_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
1490
+ WRITE_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
1491
+ WRITE_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
1492
+ WRITE_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause);
1493
+ WRITE_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause);
1494
+ WRITE_INT_FIELD(location, location, location);
1495
+ WRITE_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
1496
+ WRITE_INT_FIELD(cterefcount, cterefcount, cterefcount);
1497
+ WRITE_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
1498
+ WRITE_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
1499
+ WRITE_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
1500
+ WRITE_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
1195
1501
  }
1196
1502
 
1197
1503
  static void
1198
- _outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out, const VacuumStmt *node)
1504
+ _outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out, const MergeWhenClause *node)
1199
1505
  {
1200
- WRITE_LIST_FIELD(options, options, options);
1201
- WRITE_LIST_FIELD(rels, rels, rels);
1202
- WRITE_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
1506
+ WRITE_ENUM_FIELD(MergeMatchKind, match_kind, matchKind, matchKind);
1507
+ WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType);
1508
+ WRITE_ENUM_FIELD(OverridingKind, override, override, override);
1509
+ WRITE_NODE_PTR_FIELD(condition, condition, condition);
1510
+ WRITE_LIST_FIELD(target_list, targetList, targetList);
1511
+ WRITE_LIST_FIELD(values, values, values);
1203
1512
  }
1204
1513
 
1205
1514
  static void
1206
- _outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out, const ExplainStmt *node)
1515
+ _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out, const TriggerTransition *node)
1207
1516
  {
1208
- WRITE_NODE_PTR_FIELD(query, query, query);
1209
- WRITE_LIST_FIELD(options, options, options);
1517
+ WRITE_STRING_FIELD(name, name, name);
1518
+ WRITE_BOOL_FIELD(is_new, isNew, isNew);
1519
+ WRITE_BOOL_FIELD(is_table, isTable, isTable);
1210
1520
  }
1211
1521
 
1212
1522
  static void
1213
- _outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out, const CreateTableAsStmt *node)
1523
+ _outJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) out, const JsonOutput *node)
1214
1524
  {
1215
- WRITE_NODE_PTR_FIELD(query, query, query);
1216
- WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
1217
- WRITE_ENUM_FIELD(ObjectType, relkind, relkind, relkind);
1218
- WRITE_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
1219
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1525
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1526
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
1220
1527
  }
1221
1528
 
1222
1529
  static void
1223
- _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out, const CreateSeqStmt *node)
1530
+ _outJsonArgument(OUT_TYPE(JsonArgument, JsonArgument) out, const JsonArgument *node)
1224
1531
  {
1225
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1226
- WRITE_LIST_FIELD(options, options, options);
1227
- WRITE_UINT_FIELD(owner_id, ownerId, ownerId);
1228
- WRITE_BOOL_FIELD(for_identity, for_identity, for_identity);
1229
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1532
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, val, val, val);
1533
+ WRITE_STRING_FIELD(name, name, name);
1230
1534
  }
1231
1535
 
1232
1536
  static void
1233
- _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out, const AlterSeqStmt *node)
1537
+ _outJsonFuncExpr(OUT_TYPE(JsonFuncExpr, JsonFuncExpr) out, const JsonFuncExpr *node)
1234
1538
  {
1235
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1236
- WRITE_LIST_FIELD(options, options, options);
1237
- WRITE_BOOL_FIELD(for_identity, for_identity, for_identity);
1238
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1539
+ WRITE_ENUM_FIELD(JsonExprOp, op, op, op);
1540
+ WRITE_STRING_FIELD(column_name, column_name, column_name);
1541
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, context_item, context_item, context_item);
1542
+ WRITE_NODE_PTR_FIELD(pathspec, pathspec, pathspec);
1543
+ WRITE_LIST_FIELD(passing, passing, passing);
1544
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1545
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
1546
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1547
+ WRITE_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
1548
+ WRITE_ENUM_FIELD(JsonQuotes, quotes, quotes, quotes);
1549
+ WRITE_INT_FIELD(location, location, location);
1239
1550
  }
1240
1551
 
1241
1552
  static void
1242
- _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out, const VariableSetStmt *node)
1553
+ _outJsonTablePathSpec(OUT_TYPE(JsonTablePathSpec, JsonTablePathSpec) out, const JsonTablePathSpec *node)
1243
1554
  {
1244
- WRITE_ENUM_FIELD(VariableSetKind, kind, kind, kind);
1555
+ WRITE_NODE_PTR_FIELD(string, string, string);
1245
1556
  WRITE_STRING_FIELD(name, name, name);
1246
- WRITE_LIST_FIELD(args, args, args);
1247
- WRITE_BOOL_FIELD(is_local, is_local, is_local);
1557
+ WRITE_INT_FIELD(name_location, name_location, name_location);
1558
+ WRITE_INT_FIELD(location, location, location);
1248
1559
  }
1249
1560
 
1250
1561
  static void
1251
- _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out, const VariableShowStmt *node)
1562
+ _outJsonTable(OUT_TYPE(JsonTable, JsonTable) out, const JsonTable *node)
1563
+ {
1564
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, context_item, context_item, context_item);
1565
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonTablePathSpec, json_table_path_spec, pathspec, pathspec, pathspec);
1566
+ WRITE_LIST_FIELD(passing, passing, passing);
1567
+ WRITE_LIST_FIELD(columns, columns, columns);
1568
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1569
+ WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1570
+ WRITE_BOOL_FIELD(lateral, lateral, lateral);
1571
+ WRITE_INT_FIELD(location, location, location);
1572
+ }
1573
+
1574
+ static void
1575
+ _outJsonTableColumn(OUT_TYPE(JsonTableColumn, JsonTableColumn) out, const JsonTableColumn *node)
1252
1576
  {
1577
+ WRITE_ENUM_FIELD(JsonTableColumnType, coltype, coltype, coltype);
1253
1578
  WRITE_STRING_FIELD(name, name, name);
1579
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1580
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonTablePathSpec, json_table_path_spec, pathspec, pathspec, pathspec);
1581
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
1582
+ WRITE_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
1583
+ WRITE_ENUM_FIELD(JsonQuotes, quotes, quotes, quotes);
1584
+ WRITE_LIST_FIELD(columns, columns, columns);
1585
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
1586
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1587
+ WRITE_INT_FIELD(location, location, location);
1254
1588
  }
1255
1589
 
1256
1590
  static void
1257
- _outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out, const DiscardStmt *node)
1591
+ _outJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) out, const JsonKeyValue *node)
1258
1592
  {
1259
- WRITE_ENUM_FIELD(DiscardMode, target, target, target);
1593
+ WRITE_NODE_PTR_FIELD(key, key, key);
1594
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, value, value, value);
1260
1595
  }
1261
1596
 
1262
1597
  static void
1263
- _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTrigStmt *node)
1598
+ _outJsonParseExpr(OUT_TYPE(JsonParseExpr, JsonParseExpr) out, const JsonParseExpr *node)
1264
1599
  {
1265
- WRITE_STRING_FIELD(trigname, trigname, trigname);
1266
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1267
- WRITE_LIST_FIELD(funcname, funcname, funcname);
1268
- WRITE_LIST_FIELD(args, args, args);
1269
- WRITE_BOOL_FIELD(row, row, row);
1270
- WRITE_INT_FIELD(timing, timing, timing);
1271
- WRITE_INT_FIELD(events, events, events);
1272
- WRITE_LIST_FIELD(columns, columns, columns);
1273
- WRITE_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
1274
- WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1275
- WRITE_LIST_FIELD(transition_rels, transitionRels, transitionRels);
1276
- WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
1277
- WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1278
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
1600
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, expr, expr, expr);
1601
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1602
+ WRITE_BOOL_FIELD(unique_keys, unique_keys, unique_keys);
1603
+ WRITE_INT_FIELD(location, location, location);
1604
+ }
1605
+
1606
+ static void
1607
+ _outJsonScalarExpr(OUT_TYPE(JsonScalarExpr, JsonScalarExpr) out, const JsonScalarExpr *node)
1608
+ {
1609
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
1610
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1611
+ WRITE_INT_FIELD(location, location, location);
1612
+ }
1613
+
1614
+ static void
1615
+ _outJsonSerializeExpr(OUT_TYPE(JsonSerializeExpr, JsonSerializeExpr) out, const JsonSerializeExpr *node)
1616
+ {
1617
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, expr, expr, expr);
1618
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1619
+ WRITE_INT_FIELD(location, location, location);
1279
1620
  }
1280
1621
 
1281
1622
  static void
1282
- _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out, const CreatePLangStmt *node)
1623
+ _outJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) out, const JsonObjectConstructor *node)
1283
1624
  {
1284
- WRITE_BOOL_FIELD(replace, replace, replace);
1285
- WRITE_STRING_FIELD(plname, plname, plname);
1286
- WRITE_LIST_FIELD(plhandler, plhandler, plhandler);
1287
- WRITE_LIST_FIELD(plinline, plinline, plinline);
1288
- WRITE_LIST_FIELD(plvalidator, plvalidator, plvalidator);
1289
- WRITE_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
1625
+ WRITE_LIST_FIELD(exprs, exprs, exprs);
1626
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1627
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1628
+ WRITE_BOOL_FIELD(unique, unique, unique);
1629
+ WRITE_INT_FIELD(location, location, location);
1290
1630
  }
1291
1631
 
1292
1632
  static void
1293
- _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out, const CreateRoleStmt *node)
1633
+ _outJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) out, const JsonArrayConstructor *node)
1294
1634
  {
1295
- WRITE_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
1296
- WRITE_STRING_FIELD(role, role, role);
1297
- WRITE_LIST_FIELD(options, options, options);
1635
+ WRITE_LIST_FIELD(exprs, exprs, exprs);
1636
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1637
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1638
+ WRITE_INT_FIELD(location, location, location);
1298
1639
  }
1299
1640
 
1300
1641
  static void
1301
- _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out, const AlterRoleStmt *node)
1642
+ _outJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) out, const JsonArrayQueryConstructor *node)
1302
1643
  {
1303
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1304
- WRITE_LIST_FIELD(options, options, options);
1305
- WRITE_INT_FIELD(action, action, action);
1644
+ WRITE_NODE_PTR_FIELD(query, query, query);
1645
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1646
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
1647
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1648
+ WRITE_INT_FIELD(location, location, location);
1306
1649
  }
1307
1650
 
1308
1651
  static void
1309
- _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out, const DropRoleStmt *node)
1652
+ _outJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) out, const JsonAggConstructor *node)
1310
1653
  {
1311
- WRITE_LIST_FIELD(roles, roles, roles);
1312
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1654
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1655
+ WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1656
+ WRITE_LIST_FIELD(agg_order, agg_order, agg_order);
1657
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1658
+ WRITE_INT_FIELD(location, location, location);
1313
1659
  }
1314
1660
 
1315
1661
  static void
1316
- _outLockStmt(OUT_TYPE(LockStmt, LockStmt) out, const LockStmt *node)
1662
+ _outJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) out, const JsonObjectAgg *node)
1317
1663
  {
1318
- WRITE_LIST_FIELD(relations, relations, relations);
1319
- WRITE_INT_FIELD(mode, mode, mode);
1320
- WRITE_BOOL_FIELD(nowait, nowait, nowait);
1664
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1665
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonKeyValue, json_key_value, arg, arg, arg);
1666
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1667
+ WRITE_BOOL_FIELD(unique, unique, unique);
1321
1668
  }
1322
1669
 
1323
1670
  static void
1324
- _outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out, const ConstraintsSetStmt *node)
1671
+ _outJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) out, const JsonArrayAgg *node)
1325
1672
  {
1326
- WRITE_LIST_FIELD(constraints, constraints, constraints);
1327
- WRITE_BOOL_FIELD(deferred, deferred, deferred);
1673
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1674
+ WRITE_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, arg, arg, arg);
1675
+ WRITE_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1328
1676
  }
1329
1677
 
1330
1678
  static void
1331
- _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out, const ReindexStmt *node)
1679
+ _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out, const RawStmt *node)
1332
1680
  {
1333
- WRITE_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
1334
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1335
- WRITE_STRING_FIELD(name, name, name);
1336
- WRITE_INT_FIELD(options, options, options);
1337
- WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
1681
+ WRITE_NODE_PTR_FIELD(stmt, stmt, stmt);
1682
+ WRITE_INT_FIELD(stmt_location, stmt_location, stmt_location);
1683
+ WRITE_INT_FIELD(stmt_len, stmt_len, stmt_len);
1338
1684
  }
1339
1685
 
1340
1686
  static void
1341
- _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out, const CheckPointStmt *node)
1687
+ _outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out, const InsertStmt *node)
1342
1688
  {
1689
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1690
+ WRITE_LIST_FIELD(cols, cols, cols);
1691
+ WRITE_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
1692
+ WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
1693
+ WRITE_LIST_FIELD(returning_list, returningList, returningList);
1694
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1695
+ WRITE_ENUM_FIELD(OverridingKind, override, override, override);
1343
1696
  }
1344
1697
 
1345
1698
  static void
1346
- _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out, const CreateSchemaStmt *node)
1699
+ _outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out, const DeleteStmt *node)
1347
1700
  {
1348
- WRITE_STRING_FIELD(schemaname, schemaname, schemaname);
1349
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole);
1350
- WRITE_LIST_FIELD(schema_elts, schemaElts, schemaElts);
1351
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1701
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1702
+ WRITE_LIST_FIELD(using_clause, usingClause, usingClause);
1703
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1704
+ WRITE_LIST_FIELD(returning_list, returningList, returningList);
1705
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1352
1706
  }
1353
1707
 
1354
1708
  static void
1355
- _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out, const AlterDatabaseStmt *node)
1709
+ _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out, const UpdateStmt *node)
1356
1710
  {
1357
- WRITE_STRING_FIELD(dbname, dbname, dbname);
1358
- WRITE_LIST_FIELD(options, options, options);
1711
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1712
+ WRITE_LIST_FIELD(target_list, targetList, targetList);
1713
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1714
+ WRITE_LIST_FIELD(from_clause, fromClause, fromClause);
1715
+ WRITE_LIST_FIELD(returning_list, returningList, returningList);
1716
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1359
1717
  }
1360
1718
 
1361
1719
  static void
1362
- _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out, const AlterDatabaseSetStmt *node)
1720
+ _outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out, const MergeStmt *node)
1363
1721
  {
1364
- WRITE_STRING_FIELD(dbname, dbname, dbname);
1365
- WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1722
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1723
+ WRITE_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation);
1724
+ WRITE_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition);
1725
+ WRITE_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses);
1726
+ WRITE_LIST_FIELD(returning_list, returningList, returningList);
1727
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1366
1728
  }
1367
1729
 
1368
1730
  static void
1369
- _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out, const AlterRoleSetStmt *node)
1731
+ _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node)
1370
1732
  {
1371
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1372
- WRITE_STRING_FIELD(database, database, database);
1373
- WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1733
+ WRITE_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
1734
+ WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
1735
+ WRITE_LIST_FIELD(target_list, targetList, targetList);
1736
+ WRITE_LIST_FIELD(from_clause, fromClause, fromClause);
1737
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1738
+ WRITE_LIST_FIELD(group_clause, groupClause, groupClause);
1739
+ WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
1740
+ WRITE_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
1741
+ WRITE_LIST_FIELD(window_clause, windowClause, windowClause);
1742
+ WRITE_LIST_FIELD(values_lists, valuesLists, valuesLists);
1743
+ WRITE_LIST_FIELD(sort_clause, sortClause, sortClause);
1744
+ WRITE_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
1745
+ WRITE_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
1746
+ WRITE_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
1747
+ WRITE_LIST_FIELD(locking_clause, lockingClause, lockingClause);
1748
+ WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1749
+ WRITE_ENUM_FIELD(SetOperation, op, op, op);
1750
+ WRITE_BOOL_FIELD(all, all, all);
1751
+ WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
1752
+ WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1374
1753
  }
1375
1754
 
1376
1755
  static void
1377
- _outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out, const CreateConversionStmt *node)
1756
+ _outSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) out, const SetOperationStmt *node)
1378
1757
  {
1379
- WRITE_LIST_FIELD(conversion_name, conversion_name, conversion_name);
1380
- WRITE_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
1381
- WRITE_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
1382
- WRITE_LIST_FIELD(func_name, func_name, func_name);
1383
- WRITE_BOOL_FIELD(def, def, def);
1758
+ WRITE_ENUM_FIELD(SetOperation, op, op, op);
1759
+ WRITE_BOOL_FIELD(all, all, all);
1760
+ WRITE_NODE_PTR_FIELD(larg, larg, larg);
1761
+ WRITE_NODE_PTR_FIELD(rarg, rarg, rarg);
1762
+ WRITE_LIST_FIELD(col_types, colTypes, colTypes);
1763
+ WRITE_LIST_FIELD(col_typmods, colTypmods, colTypmods);
1764
+ WRITE_LIST_FIELD(col_collations, colCollations, colCollations);
1765
+ WRITE_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1384
1766
  }
1385
1767
 
1386
1768
  static void
1387
- _outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out, const CreateCastStmt *node)
1769
+ _outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out, const ReturnStmt *node)
1388
1770
  {
1389
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
1390
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
1391
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1392
- WRITE_ENUM_FIELD(CoercionContext, context, context, context);
1393
- WRITE_BOOL_FIELD(inout, inout, inout);
1771
+ WRITE_NODE_PTR_FIELD(returnval, returnval, returnval);
1394
1772
  }
1395
1773
 
1396
1774
  static void
1397
- _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out, const CreateOpClassStmt *node)
1775
+ _outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out, const PLAssignStmt *node)
1398
1776
  {
1399
- WRITE_LIST_FIELD(opclassname, opclassname, opclassname);
1400
- WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1401
- WRITE_STRING_FIELD(amname, amname, amname);
1402
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
1403
- WRITE_LIST_FIELD(items, items, items);
1404
- WRITE_BOOL_FIELD(is_default, isDefault, isDefault);
1777
+ WRITE_STRING_FIELD(name, name, name);
1778
+ WRITE_LIST_FIELD(indirection, indirection, indirection);
1779
+ WRITE_INT_FIELD(nnames, nnames, nnames);
1780
+ WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val);
1781
+ WRITE_INT_FIELD(location, location, location);
1405
1782
  }
1406
1783
 
1407
1784
  static void
1408
- _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out, const CreateOpFamilyStmt *node)
1785
+ _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out, const CreateSchemaStmt *node)
1409
1786
  {
1410
- WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1411
- WRITE_STRING_FIELD(amname, amname, amname);
1787
+ WRITE_STRING_FIELD(schemaname, schemaname, schemaname);
1788
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole);
1789
+ WRITE_LIST_FIELD(schema_elts, schemaElts, schemaElts);
1790
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1412
1791
  }
1413
1792
 
1414
1793
  static void
1415
- _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out, const AlterOpFamilyStmt *node)
1794
+ _outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out, const AlterTableStmt *node)
1416
1795
  {
1417
- WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1418
- WRITE_STRING_FIELD(amname, amname, amname);
1419
- WRITE_BOOL_FIELD(is_drop, isDrop, isDrop);
1420
- WRITE_LIST_FIELD(items, items, items);
1796
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1797
+ WRITE_LIST_FIELD(cmds, cmds, cmds);
1798
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1799
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1421
1800
  }
1422
1801
 
1423
1802
  static void
1424
- _outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out, const PrepareStmt *node)
1803
+ _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out, const ReplicaIdentityStmt *node)
1425
1804
  {
1805
+ WRITE_CHAR_FIELD(identity_type, identity_type, identity_type);
1426
1806
  WRITE_STRING_FIELD(name, name, name);
1427
- WRITE_LIST_FIELD(argtypes, argtypes, argtypes);
1428
- WRITE_NODE_PTR_FIELD(query, query, query);
1429
1807
  }
1430
1808
 
1431
1809
  static void
1432
- _outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out, const ExecuteStmt *node)
1810
+ _outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out, const AlterTableCmd *node)
1433
1811
  {
1812
+ WRITE_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
1434
1813
  WRITE_STRING_FIELD(name, name, name);
1435
- WRITE_LIST_FIELD(params, params, params);
1814
+ WRITE_INT_FIELD(num, num, num);
1815
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1816
+ WRITE_NODE_PTR_FIELD(def, def, def);
1817
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1818
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1819
+ WRITE_BOOL_FIELD(recurse, recurse, recurse);
1436
1820
  }
1437
1821
 
1438
1822
  static void
1439
- _outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out, const DeallocateStmt *node)
1823
+ _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out, const AlterCollationStmt *node)
1440
1824
  {
1825
+ WRITE_LIST_FIELD(collname, collname, collname);
1826
+ }
1827
+
1828
+ static void
1829
+ _outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out, const AlterDomainStmt *node)
1830
+ {
1831
+ WRITE_CHAR_FIELD(subtype, subtype, subtype);
1832
+ WRITE_LIST_FIELD(type_name, typeName, typeName);
1441
1833
  WRITE_STRING_FIELD(name, name, name);
1834
+ WRITE_NODE_PTR_FIELD(def, def, def);
1835
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1836
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1442
1837
  }
1443
1838
 
1444
1839
  static void
1445
- _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out, const DeclareCursorStmt *node)
1840
+ _outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out, const GrantStmt *node)
1446
1841
  {
1447
- WRITE_STRING_FIELD(portalname, portalname, portalname);
1448
- WRITE_INT_FIELD(options, options, options);
1449
- WRITE_NODE_PTR_FIELD(query, query, query);
1842
+ WRITE_BOOL_FIELD(is_grant, is_grant, is_grant);
1843
+ WRITE_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
1844
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1845
+ WRITE_LIST_FIELD(objects, objects, objects);
1846
+ WRITE_LIST_FIELD(privileges, privileges, privileges);
1847
+ WRITE_LIST_FIELD(grantees, grantees, grantees);
1848
+ WRITE_BOOL_FIELD(grant_option, grant_option, grant_option);
1849
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1850
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1450
1851
  }
1451
1852
 
1452
1853
  static void
1453
- _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out, const CreateTableSpaceStmt *node)
1854
+ _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out, const ObjectWithArgs *node)
1454
1855
  {
1455
- WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1456
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner);
1457
- WRITE_STRING_FIELD(location, location, location);
1458
- WRITE_LIST_FIELD(options, options, options);
1856
+ WRITE_LIST_FIELD(objname, objname, objname);
1857
+ WRITE_LIST_FIELD(objargs, objargs, objargs);
1858
+ WRITE_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs);
1859
+ WRITE_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
1459
1860
  }
1460
1861
 
1461
1862
  static void
1462
- _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out, const DropTableSpaceStmt *node)
1863
+ _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out, const AccessPriv *node)
1463
1864
  {
1464
- WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1465
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1865
+ WRITE_STRING_FIELD(priv_name, priv_name, priv_name);
1866
+ WRITE_LIST_FIELD(cols, cols, cols);
1466
1867
  }
1467
1868
 
1468
1869
  static void
1469
- _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out, const AlterObjectDependsStmt *node)
1870
+ _outGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) out, const GrantRoleStmt *node)
1470
1871
  {
1471
- WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1472
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1473
- WRITE_NODE_PTR_FIELD(object, object, object);
1474
- WRITE_NODE_PTR_FIELD(extname, extname, extname);
1475
- WRITE_BOOL_FIELD(remove, remove, remove);
1872
+ WRITE_LIST_FIELD(granted_roles, granted_roles, granted_roles);
1873
+ WRITE_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
1874
+ WRITE_BOOL_FIELD(is_grant, is_grant, is_grant);
1875
+ WRITE_LIST_FIELD(opt, opt, opt);
1876
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1877
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1476
1878
  }
1477
1879
 
1478
1880
  static void
1479
- _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out, const AlterObjectSchemaStmt *node)
1881
+ _outAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) out, const AlterDefaultPrivilegesStmt *node)
1480
1882
  {
1481
- WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1482
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1483
- WRITE_NODE_PTR_FIELD(object, object, object);
1484
- WRITE_STRING_FIELD(newschema, newschema, newschema);
1485
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1883
+ WRITE_LIST_FIELD(options, options, options);
1884
+ WRITE_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1486
1885
  }
1487
1886
 
1488
1887
  static void
1489
- _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out, const AlterOwnerStmt *node)
1888
+ _outCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) out, const CopyStmt *node)
1490
1889
  {
1491
- WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1492
1890
  WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1493
- WRITE_NODE_PTR_FIELD(object, object, object);
1494
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1891
+ WRITE_NODE_PTR_FIELD(query, query, query);
1892
+ WRITE_LIST_FIELD(attlist, attlist, attlist);
1893
+ WRITE_BOOL_FIELD(is_from, is_from, is_from);
1894
+ WRITE_BOOL_FIELD(is_program, is_program, is_program);
1895
+ WRITE_STRING_FIELD(filename, filename, filename);
1896
+ WRITE_LIST_FIELD(options, options, options);
1897
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1898
+ }
1899
+
1900
+ static void
1901
+ _outVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) out, const VariableSetStmt *node)
1902
+ {
1903
+ WRITE_ENUM_FIELD(VariableSetKind, kind, kind, kind);
1904
+ WRITE_STRING_FIELD(name, name, name);
1905
+ WRITE_LIST_FIELD(args, args, args);
1906
+ WRITE_BOOL_FIELD(is_local, is_local, is_local);
1495
1907
  }
1496
1908
 
1497
1909
  static void
1498
- _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out, const AlterOperatorStmt *node)
1910
+ _outVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) out, const VariableShowStmt *node)
1499
1911
  {
1500
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
1501
- WRITE_LIST_FIELD(options, options, options);
1912
+ WRITE_STRING_FIELD(name, name, name);
1502
1913
  }
1503
1914
 
1504
1915
  static void
1505
- _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out, const AlterTypeStmt *node)
1916
+ _outCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) out, const CreateStmt *node)
1506
1917
  {
1507
- WRITE_LIST_FIELD(type_name, typeName, typeName);
1918
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1919
+ WRITE_LIST_FIELD(table_elts, tableElts, tableElts);
1920
+ WRITE_LIST_FIELD(inh_relations, inhRelations, inhRelations);
1921
+ WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
1922
+ WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
1923
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
1924
+ WRITE_LIST_FIELD(constraints, constraints, constraints);
1508
1925
  WRITE_LIST_FIELD(options, options, options);
1926
+ WRITE_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
1927
+ WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1928
+ WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
1929
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1509
1930
  }
1510
1931
 
1511
1932
  static void
1512
- _outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out, const DropOwnedStmt *node)
1933
+ _outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node)
1513
1934
  {
1514
- WRITE_LIST_FIELD(roles, roles, roles);
1515
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1935
+ WRITE_ENUM_FIELD(ConstrType, contype, contype, contype);
1936
+ WRITE_STRING_FIELD(conname, conname, conname);
1937
+ WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
1938
+ WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1939
+ WRITE_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
1940
+ WRITE_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
1941
+ WRITE_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
1942
+ WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
1943
+ WRITE_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
1944
+ WRITE_CHAR_FIELD(generated_when, generated_when, generated_when);
1945
+ WRITE_INT_FIELD(inhcount, inhcount, inhcount);
1946
+ WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
1947
+ WRITE_LIST_FIELD(keys, keys, keys);
1948
+ WRITE_LIST_FIELD(including, including, including);
1949
+ WRITE_LIST_FIELD(exclusions, exclusions, exclusions);
1950
+ WRITE_LIST_FIELD(options, options, options);
1951
+ WRITE_STRING_FIELD(indexname, indexname, indexname);
1952
+ WRITE_STRING_FIELD(indexspace, indexspace, indexspace);
1953
+ WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
1954
+ WRITE_STRING_FIELD(access_method, access_method, access_method);
1955
+ WRITE_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
1956
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
1957
+ WRITE_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
1958
+ WRITE_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
1959
+ WRITE_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
1960
+ WRITE_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
1961
+ WRITE_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
1962
+ WRITE_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols);
1963
+ WRITE_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
1964
+ WRITE_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
1965
+ WRITE_INT_FIELD(location, location, location);
1516
1966
  }
1517
1967
 
1518
1968
  static void
1519
- _outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out, const ReassignOwnedStmt *node)
1969
+ _outCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) out, const CreateTableSpaceStmt *node)
1520
1970
  {
1521
- WRITE_LIST_FIELD(roles, roles, roles);
1522
- WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
1971
+ WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1972
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner);
1973
+ WRITE_STRING_FIELD(location, location, location);
1974
+ WRITE_LIST_FIELD(options, options, options);
1523
1975
  }
1524
1976
 
1525
1977
  static void
1526
- _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out, const CompositeTypeStmt *node)
1978
+ _outDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) out, const DropTableSpaceStmt *node)
1527
1979
  {
1528
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
1529
- WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1980
+ WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1981
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1530
1982
  }
1531
1983
 
1532
1984
  static void
1533
- _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out, const CreateEnumStmt *node)
1985
+ _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out, const AlterTableSpaceOptionsStmt *node)
1534
1986
  {
1535
- WRITE_LIST_FIELD(type_name, typeName, typeName);
1536
- WRITE_LIST_FIELD(vals, vals, vals);
1987
+ WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1988
+ WRITE_LIST_FIELD(options, options, options);
1989
+ WRITE_BOOL_FIELD(is_reset, isReset, isReset);
1537
1990
  }
1538
1991
 
1539
1992
  static void
1540
- _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out, const CreateRangeStmt *node)
1993
+ _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out, const AlterTableMoveAllStmt *node)
1541
1994
  {
1542
- WRITE_LIST_FIELD(type_name, typeName, typeName);
1543
- WRITE_LIST_FIELD(params, params, params);
1995
+ WRITE_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
1996
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1997
+ WRITE_LIST_FIELD(roles, roles, roles);
1998
+ WRITE_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
1999
+ WRITE_BOOL_FIELD(nowait, nowait, nowait);
1544
2000
  }
1545
2001
 
1546
2002
  static void
1547
- _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out, const AlterEnumStmt *node)
2003
+ _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out, const CreateExtensionStmt *node)
1548
2004
  {
1549
- WRITE_LIST_FIELD(type_name, typeName, typeName);
1550
- WRITE_STRING_FIELD(old_val, oldVal, oldVal);
1551
- WRITE_STRING_FIELD(new_val, newVal, newVal);
1552
- WRITE_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
1553
- WRITE_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
1554
- WRITE_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2005
+ WRITE_STRING_FIELD(extname, extname, extname);
2006
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2007
+ WRITE_LIST_FIELD(options, options, options);
1555
2008
  }
1556
2009
 
1557
2010
  static void
1558
- _outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out, const AlterTSDictionaryStmt *node)
2011
+ _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out, const AlterExtensionStmt *node)
1559
2012
  {
1560
- WRITE_LIST_FIELD(dictname, dictname, dictname);
2013
+ WRITE_STRING_FIELD(extname, extname, extname);
1561
2014
  WRITE_LIST_FIELD(options, options, options);
1562
2015
  }
1563
2016
 
1564
2017
  static void
1565
- _outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out, const AlterTSConfigurationStmt *node)
2018
+ _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out, const AlterExtensionContentsStmt *node)
1566
2019
  {
1567
- WRITE_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
1568
- WRITE_LIST_FIELD(cfgname, cfgname, cfgname);
1569
- WRITE_LIST_FIELD(tokentype, tokentype, tokentype);
1570
- WRITE_LIST_FIELD(dicts, dicts, dicts);
1571
- WRITE_BOOL_FIELD(override, override, override);
1572
- WRITE_BOOL_FIELD(replace, replace, replace);
1573
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2020
+ WRITE_STRING_FIELD(extname, extname, extname);
2021
+ WRITE_INT_FIELD(action, action, action);
2022
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2023
+ WRITE_NODE_PTR_FIELD(object, object, object);
1574
2024
  }
1575
2025
 
1576
2026
  static void
@@ -1609,6 +2059,14 @@ _outAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerSt
1609
2059
  WRITE_BOOL_FIELD(has_version, has_version, has_version);
1610
2060
  }
1611
2061
 
2062
+ static void
2063
+ _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out, const CreateForeignTableStmt *node)
2064
+ {
2065
+ WRITE_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
2066
+ WRITE_STRING_FIELD(servername, servername, servername);
2067
+ WRITE_LIST_FIELD(options, options, options);
2068
+ }
2069
+
1612
2070
  static void
1613
2071
  _outCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) out, const CreateUserMappingStmt *node)
1614
2072
  {
@@ -1635,805 +2093,792 @@ _outDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) out,
1635
2093
  }
1636
2094
 
1637
2095
  static void
1638
- _outAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) out, const AlterTableSpaceOptionsStmt *node)
2096
+ _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out, const ImportForeignSchemaStmt *node)
1639
2097
  {
1640
- WRITE_STRING_FIELD(tablespacename, tablespacename, tablespacename);
2098
+ WRITE_STRING_FIELD(server_name, server_name, server_name);
2099
+ WRITE_STRING_FIELD(remote_schema, remote_schema, remote_schema);
2100
+ WRITE_STRING_FIELD(local_schema, local_schema, local_schema);
2101
+ WRITE_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type);
2102
+ WRITE_LIST_FIELD(table_list, table_list, table_list);
1641
2103
  WRITE_LIST_FIELD(options, options, options);
1642
- WRITE_BOOL_FIELD(is_reset, isReset, isReset);
1643
2104
  }
1644
2105
 
1645
2106
  static void
1646
- _outAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) out, const AlterTableMoveAllStmt *node)
2107
+ _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out, const CreatePolicyStmt *node)
1647
2108
  {
1648
- WRITE_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
1649
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2109
+ WRITE_STRING_FIELD(policy_name, policy_name, policy_name);
2110
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2111
+ WRITE_STRING_FIELD(cmd_name, cmd_name, cmd_name);
2112
+ WRITE_BOOL_FIELD(permissive, permissive, permissive);
1650
2113
  WRITE_LIST_FIELD(roles, roles, roles);
1651
- WRITE_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
1652
- WRITE_BOOL_FIELD(nowait, nowait, nowait);
2114
+ WRITE_NODE_PTR_FIELD(qual, qual, qual);
2115
+ WRITE_NODE_PTR_FIELD(with_check, with_check, with_check);
1653
2116
  }
1654
2117
 
1655
2118
  static void
1656
- _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out, const SecLabelStmt *node)
2119
+ _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out, const AlterPolicyStmt *node)
1657
2120
  {
1658
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1659
- WRITE_NODE_PTR_FIELD(object, object, object);
1660
- WRITE_STRING_FIELD(provider, provider, provider);
1661
- WRITE_STRING_FIELD(label, label, label);
2121
+ WRITE_STRING_FIELD(policy_name, policy_name, policy_name);
2122
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2123
+ WRITE_LIST_FIELD(roles, roles, roles);
2124
+ WRITE_NODE_PTR_FIELD(qual, qual, qual);
2125
+ WRITE_NODE_PTR_FIELD(with_check, with_check, with_check);
1662
2126
  }
1663
2127
 
1664
2128
  static void
1665
- _outCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) out, const CreateForeignTableStmt *node)
2129
+ _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out, const CreateAmStmt *node)
1666
2130
  {
1667
- WRITE_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
1668
- WRITE_STRING_FIELD(servername, servername, servername);
2131
+ WRITE_STRING_FIELD(amname, amname, amname);
2132
+ WRITE_LIST_FIELD(handler_name, handler_name, handler_name);
2133
+ WRITE_CHAR_FIELD(amtype, amtype, amtype);
2134
+ }
2135
+
2136
+ static void
2137
+ _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTrigStmt *node)
2138
+ {
2139
+ WRITE_BOOL_FIELD(replace, replace, replace);
2140
+ WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2141
+ WRITE_STRING_FIELD(trigname, trigname, trigname);
2142
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2143
+ WRITE_LIST_FIELD(funcname, funcname, funcname);
2144
+ WRITE_LIST_FIELD(args, args, args);
2145
+ WRITE_BOOL_FIELD(row, row, row);
2146
+ WRITE_INT_FIELD(timing, timing, timing);
2147
+ WRITE_INT_FIELD(events, events, events);
2148
+ WRITE_LIST_FIELD(columns, columns, columns);
2149
+ WRITE_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
2150
+ WRITE_LIST_FIELD(transition_rels, transitionRels, transitionRels);
2151
+ WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
2152
+ WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2153
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
2154
+ }
2155
+
2156
+ static void
2157
+ _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out, const CreateEventTrigStmt *node)
2158
+ {
2159
+ WRITE_STRING_FIELD(trigname, trigname, trigname);
2160
+ WRITE_STRING_FIELD(eventname, eventname, eventname);
2161
+ WRITE_LIST_FIELD(whenclause, whenclause, whenclause);
2162
+ WRITE_LIST_FIELD(funcname, funcname, funcname);
2163
+ }
2164
+
2165
+ static void
2166
+ _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out, const AlterEventTrigStmt *node)
2167
+ {
2168
+ WRITE_STRING_FIELD(trigname, trigname, trigname);
2169
+ WRITE_CHAR_FIELD(tgenabled, tgenabled, tgenabled);
2170
+ }
2171
+
2172
+ static void
2173
+ _outCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) out, const CreatePLangStmt *node)
2174
+ {
2175
+ WRITE_BOOL_FIELD(replace, replace, replace);
2176
+ WRITE_STRING_FIELD(plname, plname, plname);
2177
+ WRITE_LIST_FIELD(plhandler, plhandler, plhandler);
2178
+ WRITE_LIST_FIELD(plinline, plinline, plinline);
2179
+ WRITE_LIST_FIELD(plvalidator, plvalidator, plvalidator);
2180
+ WRITE_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
2181
+ }
2182
+
2183
+ static void
2184
+ _outCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) out, const CreateRoleStmt *node)
2185
+ {
2186
+ WRITE_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
2187
+ WRITE_STRING_FIELD(role, role, role);
1669
2188
  WRITE_LIST_FIELD(options, options, options);
1670
2189
  }
1671
2190
 
1672
2191
  static void
1673
- _outImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) out, const ImportForeignSchemaStmt *node)
2192
+ _outAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) out, const AlterRoleStmt *node)
1674
2193
  {
1675
- WRITE_STRING_FIELD(server_name, server_name, server_name);
1676
- WRITE_STRING_FIELD(remote_schema, remote_schema, remote_schema);
1677
- WRITE_STRING_FIELD(local_schema, local_schema, local_schema);
1678
- WRITE_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type);
1679
- WRITE_LIST_FIELD(table_list, table_list, table_list);
2194
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1680
2195
  WRITE_LIST_FIELD(options, options, options);
2196
+ WRITE_INT_FIELD(action, action, action);
1681
2197
  }
1682
2198
 
1683
2199
  static void
1684
- _outCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) out, const CreateExtensionStmt *node)
2200
+ _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out, const AlterRoleSetStmt *node)
2201
+ {
2202
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
2203
+ WRITE_STRING_FIELD(database, database, database);
2204
+ WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2205
+ }
2206
+
2207
+ static void
2208
+ _outDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) out, const DropRoleStmt *node)
2209
+ {
2210
+ WRITE_LIST_FIELD(roles, roles, roles);
2211
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2212
+ }
2213
+
2214
+ static void
2215
+ _outCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) out, const CreateSeqStmt *node)
2216
+ {
2217
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2218
+ WRITE_LIST_FIELD(options, options, options);
2219
+ WRITE_UINT_FIELD(owner_id, ownerId, ownerId);
2220
+ WRITE_BOOL_FIELD(for_identity, for_identity, for_identity);
2221
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2222
+ }
2223
+
2224
+ static void
2225
+ _outAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) out, const AlterSeqStmt *node)
2226
+ {
2227
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2228
+ WRITE_LIST_FIELD(options, options, options);
2229
+ WRITE_BOOL_FIELD(for_identity, for_identity, for_identity);
2230
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2231
+ }
2232
+
2233
+ static void
2234
+ _outDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) out, const DefineStmt *node)
1685
2235
  {
1686
- WRITE_STRING_FIELD(extname, extname, extname);
2236
+ WRITE_ENUM_FIELD(ObjectType, kind, kind, kind);
2237
+ WRITE_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
2238
+ WRITE_LIST_FIELD(defnames, defnames, defnames);
2239
+ WRITE_LIST_FIELD(args, args, args);
2240
+ WRITE_LIST_FIELD(definition, definition, definition);
1687
2241
  WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1688
- WRITE_LIST_FIELD(options, options, options);
2242
+ WRITE_BOOL_FIELD(replace, replace, replace);
1689
2243
  }
1690
2244
 
1691
2245
  static void
1692
- _outAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) out, const AlterExtensionStmt *node)
2246
+ _outCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) out, const CreateDomainStmt *node)
1693
2247
  {
1694
- WRITE_STRING_FIELD(extname, extname, extname);
1695
- WRITE_LIST_FIELD(options, options, options);
2248
+ WRITE_LIST_FIELD(domainname, domainname, domainname);
2249
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2250
+ WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2251
+ WRITE_LIST_FIELD(constraints, constraints, constraints);
1696
2252
  }
1697
2253
 
1698
2254
  static void
1699
- _outAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) out, const AlterExtensionContentsStmt *node)
2255
+ _outCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) out, const CreateOpClassStmt *node)
1700
2256
  {
1701
- WRITE_STRING_FIELD(extname, extname, extname);
1702
- WRITE_INT_FIELD(action, action, action);
1703
- WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1704
- WRITE_NODE_PTR_FIELD(object, object, object);
2257
+ WRITE_LIST_FIELD(opclassname, opclassname, opclassname);
2258
+ WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2259
+ WRITE_STRING_FIELD(amname, amname, amname);
2260
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
2261
+ WRITE_LIST_FIELD(items, items, items);
2262
+ WRITE_BOOL_FIELD(is_default, isDefault, isDefault);
1705
2263
  }
1706
2264
 
1707
2265
  static void
1708
- _outCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) out, const CreateEventTrigStmt *node)
2266
+ _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out, const CreateOpClassItem *node)
1709
2267
  {
1710
- WRITE_STRING_FIELD(trigname, trigname, trigname);
1711
- WRITE_STRING_FIELD(eventname, eventname, eventname);
1712
- WRITE_LIST_FIELD(whenclause, whenclause, whenclause);
1713
- WRITE_LIST_FIELD(funcname, funcname, funcname);
2268
+ WRITE_INT_FIELD(itemtype, itemtype, itemtype);
2269
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2270
+ WRITE_INT_FIELD(number, number, number);
2271
+ WRITE_LIST_FIELD(order_family, order_family, order_family);
2272
+ WRITE_LIST_FIELD(class_args, class_args, class_args);
2273
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
1714
2274
  }
1715
2275
 
1716
2276
  static void
1717
- _outAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) out, const AlterEventTrigStmt *node)
2277
+ _outCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) out, const CreateOpFamilyStmt *node)
1718
2278
  {
1719
- WRITE_STRING_FIELD(trigname, trigname, trigname);
1720
- WRITE_CHAR_FIELD(tgenabled, tgenabled, tgenabled);
2279
+ WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2280
+ WRITE_STRING_FIELD(amname, amname, amname);
1721
2281
  }
1722
2282
 
1723
2283
  static void
1724
- _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out, const RefreshMatViewStmt *node)
2284
+ _outAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) out, const AlterOpFamilyStmt *node)
1725
2285
  {
1726
- WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
1727
- WRITE_BOOL_FIELD(skip_data, skipData, skipData);
1728
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2286
+ WRITE_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2287
+ WRITE_STRING_FIELD(amname, amname, amname);
2288
+ WRITE_BOOL_FIELD(is_drop, isDrop, isDrop);
2289
+ WRITE_LIST_FIELD(items, items, items);
1729
2290
  }
1730
2291
 
1731
2292
  static void
1732
- _outReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) out, const ReplicaIdentityStmt *node)
2293
+ _outDropStmt(OUT_TYPE(DropStmt, DropStmt) out, const DropStmt *node)
1733
2294
  {
1734
- WRITE_CHAR_FIELD(identity_type, identity_type, identity_type);
1735
- WRITE_STRING_FIELD(name, name, name);
2295
+ WRITE_LIST_FIELD(objects, objects, objects);
2296
+ WRITE_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
2297
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2298
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2299
+ WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
1736
2300
  }
1737
2301
 
1738
2302
  static void
1739
- _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out, const AlterSystemStmt *node)
2303
+ _outTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) out, const TruncateStmt *node)
1740
2304
  {
1741
- WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2305
+ WRITE_LIST_FIELD(relations, relations, relations);
2306
+ WRITE_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
2307
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1742
2308
  }
1743
2309
 
1744
2310
  static void
1745
- _outCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) out, const CreatePolicyStmt *node)
2311
+ _outCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) out, const CommentStmt *node)
1746
2312
  {
1747
- WRITE_STRING_FIELD(policy_name, policy_name, policy_name);
1748
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
1749
- WRITE_STRING_FIELD(cmd_name, cmd_name, cmd_name);
1750
- WRITE_BOOL_FIELD(permissive, permissive, permissive);
1751
- WRITE_LIST_FIELD(roles, roles, roles);
1752
- WRITE_NODE_PTR_FIELD(qual, qual, qual);
1753
- WRITE_NODE_PTR_FIELD(with_check, with_check, with_check);
2313
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2314
+ WRITE_NODE_PTR_FIELD(object, object, object);
2315
+ WRITE_STRING_FIELD(comment, comment, comment);
1754
2316
  }
1755
2317
 
1756
2318
  static void
1757
- _outAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) out, const AlterPolicyStmt *node)
2319
+ _outSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) out, const SecLabelStmt *node)
1758
2320
  {
1759
- WRITE_STRING_FIELD(policy_name, policy_name, policy_name);
1760
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
1761
- WRITE_LIST_FIELD(roles, roles, roles);
1762
- WRITE_NODE_PTR_FIELD(qual, qual, qual);
1763
- WRITE_NODE_PTR_FIELD(with_check, with_check, with_check);
2321
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2322
+ WRITE_NODE_PTR_FIELD(object, object, object);
2323
+ WRITE_STRING_FIELD(provider, provider, provider);
2324
+ WRITE_STRING_FIELD(label, label, label);
1764
2325
  }
1765
2326
 
1766
2327
  static void
1767
- _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out, const CreateTransformStmt *node)
2328
+ _outDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) out, const DeclareCursorStmt *node)
1768
2329
  {
1769
- WRITE_BOOL_FIELD(replace, replace, replace);
1770
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
1771
- WRITE_STRING_FIELD(lang, lang, lang);
1772
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
1773
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2330
+ WRITE_STRING_FIELD(portalname, portalname, portalname);
2331
+ WRITE_INT_FIELD(options, options, options);
2332
+ WRITE_NODE_PTR_FIELD(query, query, query);
1774
2333
  }
1775
2334
 
1776
2335
  static void
1777
- _outCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) out, const CreateAmStmt *node)
2336
+ _outClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) out, const ClosePortalStmt *node)
1778
2337
  {
1779
- WRITE_STRING_FIELD(amname, amname, amname);
1780
- WRITE_LIST_FIELD(handler_name, handler_name, handler_name);
1781
- WRITE_CHAR_FIELD(amtype, amtype, amtype);
2338
+ WRITE_STRING_FIELD(portalname, portalname, portalname);
1782
2339
  }
1783
2340
 
1784
2341
  static void
1785
- _outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out, const CreatePublicationStmt *node)
2342
+ _outFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) out, const FetchStmt *node)
1786
2343
  {
1787
- WRITE_STRING_FIELD(pubname, pubname, pubname);
1788
- WRITE_LIST_FIELD(options, options, options);
1789
- WRITE_LIST_FIELD(tables, tables, tables);
1790
- WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2344
+ WRITE_ENUM_FIELD(FetchDirection, direction, direction, direction);
2345
+ WRITE_LONG_FIELD(how_many, howMany, howMany);
2346
+ WRITE_STRING_FIELD(portalname, portalname, portalname);
2347
+ WRITE_BOOL_FIELD(ismove, ismove, ismove);
1791
2348
  }
1792
2349
 
1793
2350
  static void
1794
- _outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out, const AlterPublicationStmt *node)
2351
+ _outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out, const IndexStmt *node)
1795
2352
  {
1796
- WRITE_STRING_FIELD(pubname, pubname, pubname);
2353
+ WRITE_STRING_FIELD(idxname, idxname, idxname);
2354
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2355
+ WRITE_STRING_FIELD(access_method, accessMethod, accessMethod);
2356
+ WRITE_STRING_FIELD(table_space, tableSpace, tableSpace);
2357
+ WRITE_LIST_FIELD(index_params, indexParams, indexParams);
2358
+ WRITE_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
1797
2359
  WRITE_LIST_FIELD(options, options, options);
1798
- WRITE_LIST_FIELD(tables, tables, tables);
1799
- WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
1800
- WRITE_ENUM_FIELD(DefElemAction, table_action, tableAction, tableAction);
2360
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2361
+ WRITE_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
2362
+ WRITE_STRING_FIELD(idxcomment, idxcomment, idxcomment);
2363
+ WRITE_UINT_FIELD(index_oid, indexOid, indexOid);
2364
+ WRITE_UINT_FIELD(old_number, oldNumber, oldNumber);
2365
+ WRITE_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
2366
+ WRITE_UINT_FIELD(old_first_relfilelocator_subid, oldFirstRelfilelocatorSubid, oldFirstRelfilelocatorSubid);
2367
+ WRITE_BOOL_FIELD(unique, unique, unique);
2368
+ WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2369
+ WRITE_BOOL_FIELD(primary, primary, primary);
2370
+ WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2371
+ WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
2372
+ WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2373
+ WRITE_BOOL_FIELD(transformed, transformed, transformed);
2374
+ WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
2375
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2376
+ WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
1801
2377
  }
1802
2378
 
1803
2379
  static void
1804
- _outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out, const CreateSubscriptionStmt *node)
2380
+ _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out, const CreateStatsStmt *node)
1805
2381
  {
1806
- WRITE_STRING_FIELD(subname, subname, subname);
1807
- WRITE_STRING_FIELD(conninfo, conninfo, conninfo);
1808
- WRITE_LIST_FIELD(publication, publication, publication);
1809
- WRITE_LIST_FIELD(options, options, options);
2382
+ WRITE_LIST_FIELD(defnames, defnames, defnames);
2383
+ WRITE_LIST_FIELD(stat_types, stat_types, stat_types);
2384
+ WRITE_LIST_FIELD(exprs, exprs, exprs);
2385
+ WRITE_LIST_FIELD(relations, relations, relations);
2386
+ WRITE_STRING_FIELD(stxcomment, stxcomment, stxcomment);
2387
+ WRITE_BOOL_FIELD(transformed, transformed, transformed);
2388
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1810
2389
  }
1811
2390
 
1812
2391
  static void
1813
- _outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out, const AlterSubscriptionStmt *node)
2392
+ _outStatsElem(OUT_TYPE(StatsElem, StatsElem) out, const StatsElem *node)
1814
2393
  {
1815
- WRITE_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
1816
- WRITE_STRING_FIELD(subname, subname, subname);
1817
- WRITE_STRING_FIELD(conninfo, conninfo, conninfo);
1818
- WRITE_LIST_FIELD(publication, publication, publication);
1819
- WRITE_LIST_FIELD(options, options, options);
2394
+ WRITE_STRING_FIELD(name, name, name);
2395
+ WRITE_NODE_PTR_FIELD(expr, expr, expr);
1820
2396
  }
1821
2397
 
1822
2398
  static void
1823
- _outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out, const DropSubscriptionStmt *node)
2399
+ _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out, const AlterStatsStmt *node)
1824
2400
  {
1825
- WRITE_STRING_FIELD(subname, subname, subname);
2401
+ WRITE_LIST_FIELD(defnames, defnames, defnames);
2402
+ WRITE_NODE_PTR_FIELD(stxstattarget, stxstattarget, stxstattarget);
1826
2403
  WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1827
- WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1828
2404
  }
1829
2405
 
1830
2406
  static void
1831
- _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out, const CreateStatsStmt *node)
2407
+ _outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out, const CreateFunctionStmt *node)
1832
2408
  {
1833
- WRITE_LIST_FIELD(defnames, defnames, defnames);
1834
- WRITE_LIST_FIELD(stat_types, stat_types, stat_types);
1835
- WRITE_LIST_FIELD(exprs, exprs, exprs);
1836
- WRITE_LIST_FIELD(relations, relations, relations);
1837
- WRITE_STRING_FIELD(stxcomment, stxcomment, stxcomment);
1838
- WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2409
+ WRITE_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
2410
+ WRITE_BOOL_FIELD(replace, replace, replace);
2411
+ WRITE_LIST_FIELD(funcname, funcname, funcname);
2412
+ WRITE_LIST_FIELD(parameters, parameters, parameters);
2413
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
2414
+ WRITE_LIST_FIELD(options, options, options);
2415
+ WRITE_NODE_PTR_FIELD(sql_body, sql_body, sql_body);
1839
2416
  }
1840
2417
 
1841
2418
  static void
1842
- _outAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) out, const AlterCollationStmt *node)
2419
+ _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out, const FunctionParameter *node)
1843
2420
  {
1844
- WRITE_LIST_FIELD(collname, collname, collname);
2421
+ WRITE_STRING_FIELD(name, name, name);
2422
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2423
+ WRITE_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2424
+ WRITE_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
1845
2425
  }
1846
2426
 
1847
2427
  static void
1848
- _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out, const CallStmt *node)
2428
+ _outAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) out, const AlterFunctionStmt *node)
1849
2429
  {
1850
- WRITE_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
1851
- WRITE_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2430
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2431
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
2432
+ WRITE_LIST_FIELD(actions, actions, actions);
1852
2433
  }
1853
2434
 
1854
2435
  static void
1855
- _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out, const AlterStatsStmt *node)
2436
+ _outDoStmt(OUT_TYPE(DoStmt, DoStmt) out, const DoStmt *node)
1856
2437
  {
1857
- WRITE_LIST_FIELD(defnames, defnames, defnames);
1858
- WRITE_INT_FIELD(stxstattarget, stxstattarget, stxstattarget);
1859
- WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2438
+ WRITE_LIST_FIELD(args, args, args);
1860
2439
  }
1861
2440
 
1862
2441
  static void
1863
- _outAExpr(OUT_TYPE(A_Expr, AExpr) out, const A_Expr *node)
2442
+ _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out, const InlineCodeBlock *node)
1864
2443
  {
1865
- WRITE_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
1866
- WRITE_LIST_FIELD(name, name, name);
1867
- WRITE_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
1868
- WRITE_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
1869
- WRITE_INT_FIELD(location, location, location);
2444
+ WRITE_STRING_FIELD(source_text, source_text, source_text);
2445
+ WRITE_UINT_FIELD(lang_oid, langOid, langOid);
2446
+ WRITE_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
2447
+ WRITE_BOOL_FIELD(atomic, atomic, atomic);
1870
2448
  }
1871
2449
 
1872
2450
  static void
1873
- _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out, const ColumnRef *node)
2451
+ _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out, const CallStmt *node)
1874
2452
  {
1875
- WRITE_LIST_FIELD(fields, fields, fields);
1876
- WRITE_INT_FIELD(location, location, location);
2453
+ WRITE_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
2454
+ WRITE_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2455
+ WRITE_LIST_FIELD(outargs, outargs, outargs);
1877
2456
  }
1878
2457
 
1879
2458
  static void
1880
- _outParamRef(OUT_TYPE(ParamRef, ParamRef) out, const ParamRef *node)
2459
+ _outCallContext(OUT_TYPE(CallContext, CallContext) out, const CallContext *node)
1881
2460
  {
1882
- WRITE_INT_FIELD(number, number, number);
1883
- WRITE_INT_FIELD(location, location, location);
2461
+ WRITE_BOOL_FIELD(atomic, atomic, atomic);
1884
2462
  }
1885
2463
 
1886
2464
  static void
1887
- _outAConst(OUT_TYPE(A_Const, AConst) out, const A_Const *node)
2465
+ _outRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) out, const RenameStmt *node)
1888
2466
  {
1889
- WRITE_NODE_FIELD(val, val, val);
1890
- WRITE_INT_FIELD(location, location, location);
2467
+ WRITE_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
2468
+ WRITE_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
2469
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2470
+ WRITE_NODE_PTR_FIELD(object, object, object);
2471
+ WRITE_STRING_FIELD(subname, subname, subname);
2472
+ WRITE_STRING_FIELD(newname, newname, newname);
2473
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2474
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1891
2475
  }
1892
2476
 
1893
2477
  static void
1894
- _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node)
2478
+ _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) out, const AlterObjectDependsStmt *node)
1895
2479
  {
1896
- WRITE_LIST_FIELD(funcname, funcname, funcname);
1897
- WRITE_LIST_FIELD(args, args, args);
1898
- WRITE_LIST_FIELD(agg_order, agg_order, agg_order);
1899
- WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1900
- WRITE_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
1901
- WRITE_BOOL_FIELD(agg_star, agg_star, agg_star);
1902
- WRITE_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
1903
- WRITE_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
1904
- WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1905
- WRITE_INT_FIELD(location, location, location);
2480
+ WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2481
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2482
+ WRITE_NODE_PTR_FIELD(object, object, object);
2483
+ WRITE_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname);
2484
+ WRITE_BOOL_FIELD(remove, remove, remove);
1906
2485
  }
1907
2486
 
1908
2487
  static void
1909
- _outAStar(OUT_TYPE(A_Star, AStar) out, const A_Star *node)
2488
+ _outAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) out, const AlterObjectSchemaStmt *node)
1910
2489
  {
2490
+ WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2491
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2492
+ WRITE_NODE_PTR_FIELD(object, object, object);
2493
+ WRITE_STRING_FIELD(newschema, newschema, newschema);
2494
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1911
2495
  }
1912
2496
 
1913
2497
  static void
1914
- _outAIndices(OUT_TYPE(A_Indices, AIndices) out, const A_Indices *node)
2498
+ _outAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) out, const AlterOwnerStmt *node)
1915
2499
  {
1916
- WRITE_BOOL_FIELD(is_slice, is_slice, is_slice);
1917
- WRITE_NODE_PTR_FIELD(lidx, lidx, lidx);
1918
- WRITE_NODE_PTR_FIELD(uidx, uidx, uidx);
2500
+ WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2501
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2502
+ WRITE_NODE_PTR_FIELD(object, object, object);
2503
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1919
2504
  }
1920
2505
 
1921
2506
  static void
1922
- _outAIndirection(OUT_TYPE(A_Indirection, AIndirection) out, const A_Indirection *node)
2507
+ _outAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) out, const AlterOperatorStmt *node)
1923
2508
  {
1924
- WRITE_NODE_PTR_FIELD(arg, arg, arg);
1925
- WRITE_LIST_FIELD(indirection, indirection, indirection);
2509
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
2510
+ WRITE_LIST_FIELD(options, options, options);
1926
2511
  }
1927
2512
 
1928
2513
  static void
1929
- _outAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) out, const A_ArrayExpr *node)
2514
+ _outAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) out, const AlterTypeStmt *node)
1930
2515
  {
1931
- WRITE_LIST_FIELD(elements, elements, elements);
1932
- WRITE_INT_FIELD(location, location, location);
2516
+ WRITE_LIST_FIELD(type_name, typeName, typeName);
2517
+ WRITE_LIST_FIELD(options, options, options);
1933
2518
  }
1934
2519
 
1935
2520
  static void
1936
- _outResTarget(OUT_TYPE(ResTarget, ResTarget) out, const ResTarget *node)
2521
+ _outRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) out, const RuleStmt *node)
1937
2522
  {
1938
- WRITE_STRING_FIELD(name, name, name);
1939
- WRITE_LIST_FIELD(indirection, indirection, indirection);
1940
- WRITE_NODE_PTR_FIELD(val, val, val);
1941
- WRITE_INT_FIELD(location, location, location);
2523
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2524
+ WRITE_STRING_FIELD(rulename, rulename, rulename);
2525
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2526
+ WRITE_ENUM_FIELD(CmdType, event, event, event);
2527
+ WRITE_BOOL_FIELD(instead, instead, instead);
2528
+ WRITE_LIST_FIELD(actions, actions, actions);
2529
+ WRITE_BOOL_FIELD(replace, replace, replace);
1942
2530
  }
1943
2531
 
1944
2532
  static void
1945
- _outMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) out, const MultiAssignRef *node)
2533
+ _outNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) out, const NotifyStmt *node)
1946
2534
  {
1947
- WRITE_NODE_PTR_FIELD(source, source, source);
1948
- WRITE_INT_FIELD(colno, colno, colno);
1949
- WRITE_INT_FIELD(ncolumns, ncolumns, ncolumns);
2535
+ WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
2536
+ WRITE_STRING_FIELD(payload, payload, payload);
1950
2537
  }
1951
2538
 
1952
2539
  static void
1953
- _outTypeCast(OUT_TYPE(TypeCast, TypeCast) out, const TypeCast *node)
2540
+ _outListenStmt(OUT_TYPE(ListenStmt, ListenStmt) out, const ListenStmt *node)
1954
2541
  {
1955
- WRITE_NODE_PTR_FIELD(arg, arg, arg);
1956
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1957
- WRITE_INT_FIELD(location, location, location);
2542
+ WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
1958
2543
  }
1959
2544
 
1960
2545
  static void
1961
- _outCollateClause(OUT_TYPE(CollateClause, CollateClause) out, const CollateClause *node)
2546
+ _outUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) out, const UnlistenStmt *node)
1962
2547
  {
1963
- WRITE_NODE_PTR_FIELD(arg, arg, arg);
1964
- WRITE_LIST_FIELD(collname, collname, collname);
1965
- WRITE_INT_FIELD(location, location, location);
2548
+ WRITE_STRING_FIELD(conditionname, conditionname, conditionname);
1966
2549
  }
1967
2550
 
1968
2551
  static void
1969
- _outSortBy(OUT_TYPE(SortBy, SortBy) out, const SortBy *node)
2552
+ _outTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) out, const TransactionStmt *node)
1970
2553
  {
1971
- WRITE_NODE_PTR_FIELD(node, node, node);
1972
- WRITE_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
1973
- WRITE_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
1974
- WRITE_LIST_FIELD(use_op, useOp, useOp);
2554
+ WRITE_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
2555
+ WRITE_LIST_FIELD(options, options, options);
2556
+ WRITE_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
2557
+ WRITE_STRING_FIELD(gid, gid, gid);
2558
+ WRITE_BOOL_FIELD(chain, chain, chain);
1975
2559
  WRITE_INT_FIELD(location, location, location);
1976
2560
  }
1977
2561
 
1978
2562
  static void
1979
- _outWindowDef(OUT_TYPE(WindowDef, WindowDef) out, const WindowDef *node)
2563
+ _outCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) out, const CompositeTypeStmt *node)
1980
2564
  {
1981
- WRITE_STRING_FIELD(name, name, name);
1982
- WRITE_STRING_FIELD(refname, refname, refname);
1983
- WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1984
- WRITE_LIST_FIELD(order_clause, orderClause, orderClause);
1985
- WRITE_INT_FIELD(frame_options, frameOptions, frameOptions);
1986
- WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1987
- WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1988
- WRITE_INT_FIELD(location, location, location);
2565
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
2566
+ WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1989
2567
  }
1990
2568
 
1991
2569
  static void
1992
- _outRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) out, const RangeSubselect *node)
2570
+ _outCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) out, const CreateEnumStmt *node)
1993
2571
  {
1994
- WRITE_BOOL_FIELD(lateral, lateral, lateral);
1995
- WRITE_NODE_PTR_FIELD(subquery, subquery, subquery);
1996
- WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2572
+ WRITE_LIST_FIELD(type_name, typeName, typeName);
2573
+ WRITE_LIST_FIELD(vals, vals, vals);
1997
2574
  }
1998
2575
 
1999
2576
  static void
2000
- _outRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) out, const RangeFunction *node)
2577
+ _outCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) out, const CreateRangeStmt *node)
2001
2578
  {
2002
- WRITE_BOOL_FIELD(lateral, lateral, lateral);
2003
- WRITE_BOOL_FIELD(ordinality, ordinality, ordinality);
2004
- WRITE_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
2005
- WRITE_LIST_FIELD(functions, functions, functions);
2006
- WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2007
- WRITE_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2579
+ WRITE_LIST_FIELD(type_name, typeName, typeName);
2580
+ WRITE_LIST_FIELD(params, params, params);
2008
2581
  }
2009
2582
 
2010
2583
  static void
2011
- _outRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) out, const RangeTableSample *node)
2584
+ _outAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) out, const AlterEnumStmt *node)
2012
2585
  {
2013
- WRITE_NODE_PTR_FIELD(relation, relation, relation);
2014
- WRITE_LIST_FIELD(method, method, method);
2015
- WRITE_LIST_FIELD(args, args, args);
2016
- WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
2017
- WRITE_INT_FIELD(location, location, location);
2586
+ WRITE_LIST_FIELD(type_name, typeName, typeName);
2587
+ WRITE_STRING_FIELD(old_val, oldVal, oldVal);
2588
+ WRITE_STRING_FIELD(new_val, newVal, newVal);
2589
+ WRITE_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
2590
+ WRITE_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
2591
+ WRITE_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2018
2592
  }
2019
2593
 
2020
2594
  static void
2021
- _outRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) out, const RangeTableFunc *node)
2595
+ _outViewStmt(OUT_TYPE(ViewStmt, ViewStmt) out, const ViewStmt *node)
2022
2596
  {
2023
- WRITE_BOOL_FIELD(lateral, lateral, lateral);
2024
- WRITE_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
2025
- WRITE_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
2026
- WRITE_LIST_FIELD(namespaces, namespaces, namespaces);
2027
- WRITE_LIST_FIELD(columns, columns, columns);
2028
- WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2029
- WRITE_INT_FIELD(location, location, location);
2597
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
2598
+ WRITE_LIST_FIELD(aliases, aliases, aliases);
2599
+ WRITE_NODE_PTR_FIELD(query, query, query);
2600
+ WRITE_BOOL_FIELD(replace, replace, replace);
2601
+ WRITE_LIST_FIELD(options, options, options);
2602
+ WRITE_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
2030
2603
  }
2031
2604
 
2032
2605
  static void
2033
- _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) out, const RangeTableFuncCol *node)
2606
+ _outLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) out, const LoadStmt *node)
2034
2607
  {
2035
- WRITE_STRING_FIELD(colname, colname, colname);
2036
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2037
- WRITE_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
2038
- WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2039
- WRITE_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
2040
- WRITE_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
2041
- WRITE_INT_FIELD(location, location, location);
2608
+ WRITE_STRING_FIELD(filename, filename, filename);
2042
2609
  }
2043
2610
 
2044
2611
  static void
2045
- _outTypeName(OUT_TYPE(TypeName, TypeName) out, const TypeName *node)
2612
+ _outCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) out, const CreatedbStmt *node)
2046
2613
  {
2047
- WRITE_LIST_FIELD(names, names, names);
2048
- WRITE_UINT_FIELD(type_oid, typeOid, typeOid);
2049
- WRITE_BOOL_FIELD(setof, setof, setof);
2050
- WRITE_BOOL_FIELD(pct_type, pct_type, pct_type);
2051
- WRITE_LIST_FIELD(typmods, typmods, typmods);
2052
- WRITE_INT_FIELD(typemod, typemod, typemod);
2053
- WRITE_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
2054
- WRITE_INT_FIELD(location, location, location);
2614
+ WRITE_STRING_FIELD(dbname, dbname, dbname);
2615
+ WRITE_LIST_FIELD(options, options, options);
2055
2616
  }
2056
2617
 
2057
2618
  static void
2058
- _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out, const ColumnDef *node)
2619
+ _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out, const AlterDatabaseStmt *node)
2059
2620
  {
2060
- WRITE_STRING_FIELD(colname, colname, colname);
2061
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2062
- WRITE_INT_FIELD(inhcount, inhcount, inhcount);
2063
- WRITE_BOOL_FIELD(is_local, is_local, is_local);
2064
- WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2065
- WRITE_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
2066
- WRITE_CHAR_FIELD(storage, storage, storage);
2067
- WRITE_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
2068
- WRITE_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
2069
- WRITE_CHAR_FIELD(identity, identity, identity);
2070
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
2071
- WRITE_CHAR_FIELD(generated, generated, generated);
2072
- WRITE_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2073
- WRITE_UINT_FIELD(coll_oid, collOid, collOid);
2074
- WRITE_LIST_FIELD(constraints, constraints, constraints);
2075
- WRITE_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
2076
- WRITE_INT_FIELD(location, location, location);
2621
+ WRITE_STRING_FIELD(dbname, dbname, dbname);
2622
+ WRITE_LIST_FIELD(options, options, options);
2077
2623
  }
2078
2624
 
2079
2625
  static void
2080
- _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out, const IndexElem *node)
2626
+ _outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out, const AlterDatabaseRefreshCollStmt *node)
2081
2627
  {
2082
- WRITE_STRING_FIELD(name, name, name);
2083
- WRITE_NODE_PTR_FIELD(expr, expr, expr);
2084
- WRITE_STRING_FIELD(indexcolname, indexcolname, indexcolname);
2085
- WRITE_LIST_FIELD(collation, collation, collation);
2086
- WRITE_LIST_FIELD(opclass, opclass, opclass);
2087
- WRITE_LIST_FIELD(opclassopts, opclassopts, opclassopts);
2088
- WRITE_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
2089
- WRITE_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
2628
+ WRITE_STRING_FIELD(dbname, dbname, dbname);
2090
2629
  }
2091
2630
 
2092
2631
  static void
2093
- _outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node)
2632
+ _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out, const AlterDatabaseSetStmt *node)
2094
2633
  {
2095
- WRITE_ENUM_FIELD(ConstrType, contype, contype, contype);
2096
- WRITE_STRING_FIELD(conname, conname, conname);
2097
- WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
2098
- WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2099
- WRITE_INT_FIELD(location, location, location);
2100
- WRITE_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
2101
- WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
2102
- WRITE_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
2103
- WRITE_CHAR_FIELD(generated_when, generated_when, generated_when);
2104
- WRITE_LIST_FIELD(keys, keys, keys);
2105
- WRITE_LIST_FIELD(including, including, including);
2106
- WRITE_LIST_FIELD(exclusions, exclusions, exclusions);
2107
- WRITE_LIST_FIELD(options, options, options);
2108
- WRITE_STRING_FIELD(indexname, indexname, indexname);
2109
- WRITE_STRING_FIELD(indexspace, indexspace, indexspace);
2110
- WRITE_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2111
- WRITE_STRING_FIELD(access_method, access_method, access_method);
2112
- WRITE_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
2113
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
2114
- WRITE_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
2115
- WRITE_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
2116
- WRITE_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
2117
- WRITE_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
2118
- WRITE_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
2119
- WRITE_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
2120
- WRITE_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
2121
- WRITE_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
2122
- WRITE_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
2634
+ WRITE_STRING_FIELD(dbname, dbname, dbname);
2635
+ WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2123
2636
  }
2124
2637
 
2125
2638
  static void
2126
- _outDefElem(OUT_TYPE(DefElem, DefElem) out, const DefElem *node)
2639
+ _outDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) out, const DropdbStmt *node)
2127
2640
  {
2128
- WRITE_STRING_FIELD(defnamespace, defnamespace, defnamespace);
2129
- WRITE_STRING_FIELD(defname, defname, defname);
2130
- WRITE_NODE_PTR_FIELD(arg, arg, arg);
2131
- WRITE_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
2132
- WRITE_INT_FIELD(location, location, location);
2641
+ WRITE_STRING_FIELD(dbname, dbname, dbname);
2642
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2643
+ WRITE_LIST_FIELD(options, options, options);
2133
2644
  }
2134
2645
 
2135
2646
  static void
2136
- _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out, const RangeTblEntry *node)
2647
+ _outAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) out, const AlterSystemStmt *node)
2137
2648
  {
2138
- WRITE_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
2139
- WRITE_UINT_FIELD(relid, relid, relid);
2140
- WRITE_CHAR_FIELD(relkind, relkind, relkind);
2141
- WRITE_INT_FIELD(rellockmode, rellockmode, rellockmode);
2142
- WRITE_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
2143
- WRITE_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
2144
- WRITE_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
2145
- WRITE_ENUM_FIELD(JoinType, jointype, jointype, jointype);
2146
- WRITE_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
2147
- WRITE_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
2148
- WRITE_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
2149
- WRITE_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
2150
- WRITE_LIST_FIELD(functions, functions, functions);
2151
- WRITE_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
2152
- WRITE_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
2153
- WRITE_LIST_FIELD(values_lists, values_lists, values_lists);
2154
- WRITE_STRING_FIELD(ctename, ctename, ctename);
2155
- WRITE_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
2156
- WRITE_BOOL_FIELD(self_reference, self_reference, self_reference);
2157
- WRITE_LIST_FIELD(coltypes, coltypes, coltypes);
2158
- WRITE_LIST_FIELD(coltypmods, coltypmods, coltypmods);
2159
- WRITE_LIST_FIELD(colcollations, colcollations, colcollations);
2160
- WRITE_STRING_FIELD(enrname, enrname, enrname);
2161
- WRITE_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
2162
- WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2163
- WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
2164
- WRITE_BOOL_FIELD(lateral, lateral, lateral);
2165
- WRITE_BOOL_FIELD(inh, inh, inh);
2166
- WRITE_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
2167
- WRITE_UINT_FIELD(required_perms, requiredPerms, requiredPerms);
2168
- WRITE_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
2169
- WRITE_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
2170
- WRITE_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
2171
- WRITE_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
2172
- WRITE_BITMAPSET_FIELD(extra_updated_cols, extraUpdatedCols, extraUpdatedCols);
2173
- WRITE_LIST_FIELD(security_quals, securityQuals, securityQuals);
2649
+ WRITE_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2174
2650
  }
2175
2651
 
2176
2652
  static void
2177
- _outRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) out, const RangeTblFunction *node)
2653
+ _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out, const ClusterStmt *node)
2178
2654
  {
2179
- WRITE_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
2180
- WRITE_INT_FIELD(funccolcount, funccolcount, funccolcount);
2181
- WRITE_LIST_FIELD(funccolnames, funccolnames, funccolnames);
2182
- WRITE_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
2183
- WRITE_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
2184
- WRITE_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
2185
- WRITE_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
2655
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2656
+ WRITE_STRING_FIELD(indexname, indexname, indexname);
2657
+ WRITE_LIST_FIELD(params, params, params);
2186
2658
  }
2187
2659
 
2188
2660
  static void
2189
- _outTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) out, const TableSampleClause *node)
2661
+ _outVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) out, const VacuumStmt *node)
2190
2662
  {
2191
- WRITE_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
2192
- WRITE_LIST_FIELD(args, args, args);
2193
- WRITE_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
2663
+ WRITE_LIST_FIELD(options, options, options);
2664
+ WRITE_LIST_FIELD(rels, rels, rels);
2665
+ WRITE_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
2194
2666
  }
2195
2667
 
2196
2668
  static void
2197
- _outWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) out, const WithCheckOption *node)
2669
+ _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out, const VacuumRelation *node)
2198
2670
  {
2199
- WRITE_ENUM_FIELD(WCOKind, kind, kind, kind);
2200
- WRITE_STRING_FIELD(relname, relname, relname);
2201
- WRITE_STRING_FIELD(polname, polname, polname);
2202
- WRITE_NODE_PTR_FIELD(qual, qual, qual);
2203
- WRITE_BOOL_FIELD(cascaded, cascaded, cascaded);
2671
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2672
+ WRITE_UINT_FIELD(oid, oid, oid);
2673
+ WRITE_LIST_FIELD(va_cols, va_cols, va_cols);
2204
2674
  }
2205
2675
 
2206
2676
  static void
2207
- _outSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) out, const SortGroupClause *node)
2677
+ _outExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) out, const ExplainStmt *node)
2208
2678
  {
2209
- WRITE_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
2210
- WRITE_UINT_FIELD(eqop, eqop, eqop);
2211
- WRITE_UINT_FIELD(sortop, sortop, sortop);
2212
- WRITE_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
2213
- WRITE_BOOL_FIELD(hashable, hashable, hashable);
2679
+ WRITE_NODE_PTR_FIELD(query, query, query);
2680
+ WRITE_LIST_FIELD(options, options, options);
2214
2681
  }
2215
2682
 
2216
2683
  static void
2217
- _outGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) out, const GroupingSet *node)
2684
+ _outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out, const CreateTableAsStmt *node)
2218
2685
  {
2219
- WRITE_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
2220
- WRITE_LIST_FIELD(content, content, content);
2221
- WRITE_INT_FIELD(location, location, location);
2686
+ WRITE_NODE_PTR_FIELD(query, query, query);
2687
+ WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
2688
+ WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2689
+ WRITE_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
2690
+ WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2222
2691
  }
2223
2692
 
2224
2693
  static void
2225
- _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out, const WindowClause *node)
2694
+ _outRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) out, const RefreshMatViewStmt *node)
2226
2695
  {
2227
- WRITE_STRING_FIELD(name, name, name);
2228
- WRITE_STRING_FIELD(refname, refname, refname);
2229
- WRITE_LIST_FIELD(partition_clause, partitionClause, partitionClause);
2230
- WRITE_LIST_FIELD(order_clause, orderClause, orderClause);
2231
- WRITE_INT_FIELD(frame_options, frameOptions, frameOptions);
2232
- WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
2233
- WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
2234
- WRITE_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
2235
- WRITE_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
2236
- WRITE_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
2237
- WRITE_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
2238
- WRITE_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
2239
- WRITE_UINT_FIELD(winref, winref, winref);
2240
- WRITE_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
2696
+ WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
2697
+ WRITE_BOOL_FIELD(skip_data, skipData, skipData);
2698
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2241
2699
  }
2242
2700
 
2243
2701
  static void
2244
- _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out, const ObjectWithArgs *node)
2702
+ _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out, const CheckPointStmt *node)
2245
2703
  {
2246
- WRITE_LIST_FIELD(objname, objname, objname);
2247
- WRITE_LIST_FIELD(objargs, objargs, objargs);
2248
- WRITE_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
2249
2704
  }
2250
2705
 
2251
2706
  static void
2252
- _outAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) out, const AccessPriv *node)
2707
+ _outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out, const DiscardStmt *node)
2253
2708
  {
2254
- WRITE_STRING_FIELD(priv_name, priv_name, priv_name);
2255
- WRITE_LIST_FIELD(cols, cols, cols);
2709
+ WRITE_ENUM_FIELD(DiscardMode, target, target, target);
2256
2710
  }
2257
2711
 
2258
2712
  static void
2259
- _outCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) out, const CreateOpClassItem *node)
2713
+ _outLockStmt(OUT_TYPE(LockStmt, LockStmt) out, const LockStmt *node)
2260
2714
  {
2261
- WRITE_INT_FIELD(itemtype, itemtype, itemtype);
2262
- WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2263
- WRITE_INT_FIELD(number, number, number);
2264
- WRITE_LIST_FIELD(order_family, order_family, order_family);
2265
- WRITE_LIST_FIELD(class_args, class_args, class_args);
2266
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
2715
+ WRITE_LIST_FIELD(relations, relations, relations);
2716
+ WRITE_INT_FIELD(mode, mode, mode);
2717
+ WRITE_BOOL_FIELD(nowait, nowait, nowait);
2267
2718
  }
2268
2719
 
2269
2720
  static void
2270
- _outTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) out, const TableLikeClause *node)
2721
+ _outConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) out, const ConstraintsSetStmt *node)
2271
2722
  {
2272
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2273
- WRITE_UINT_FIELD(options, options, options);
2274
- WRITE_UINT_FIELD(relation_oid, relationOid, relationOid);
2723
+ WRITE_LIST_FIELD(constraints, constraints, constraints);
2724
+ WRITE_BOOL_FIELD(deferred, deferred, deferred);
2275
2725
  }
2276
2726
 
2277
2727
  static void
2278
- _outFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) out, const FunctionParameter *node)
2728
+ _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out, const ReindexStmt *node)
2279
2729
  {
2730
+ WRITE_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
2731
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2280
2732
  WRITE_STRING_FIELD(name, name, name);
2281
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2282
- WRITE_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2283
- WRITE_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
2733
+ WRITE_LIST_FIELD(params, params, params);
2284
2734
  }
2285
2735
 
2286
2736
  static void
2287
- _outLockingClause(OUT_TYPE(LockingClause, LockingClause) out, const LockingClause *node)
2737
+ _outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out, const CreateConversionStmt *node)
2288
2738
  {
2289
- WRITE_LIST_FIELD(locked_rels, lockedRels, lockedRels);
2290
- WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2291
- WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
2739
+ WRITE_LIST_FIELD(conversion_name, conversion_name, conversion_name);
2740
+ WRITE_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
2741
+ WRITE_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
2742
+ WRITE_LIST_FIELD(func_name, func_name, func_name);
2743
+ WRITE_BOOL_FIELD(def, def, def);
2292
2744
  }
2293
2745
 
2294
2746
  static void
2295
- _outRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) out, const RowMarkClause *node)
2747
+ _outCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) out, const CreateCastStmt *node)
2296
2748
  {
2297
- WRITE_UINT_FIELD(rti, rti, rti);
2298
- WRITE_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2299
- WRITE_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
2300
- WRITE_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
2749
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
2750
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
2751
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
2752
+ WRITE_ENUM_FIELD(CoercionContext, context, context, context);
2753
+ WRITE_BOOL_FIELD(inout, inout, inout);
2301
2754
  }
2302
2755
 
2303
2756
  static void
2304
- _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out, const XmlSerialize *node)
2757
+ _outCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) out, const CreateTransformStmt *node)
2305
2758
  {
2306
- WRITE_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
2307
- WRITE_NODE_PTR_FIELD(expr, expr, expr);
2308
- WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2309
- WRITE_INT_FIELD(location, location, location);
2759
+ WRITE_BOOL_FIELD(replace, replace, replace);
2760
+ WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
2761
+ WRITE_STRING_FIELD(lang, lang, lang);
2762
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
2763
+ WRITE_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2310
2764
  }
2311
2765
 
2312
2766
  static void
2313
- _outWithClause(OUT_TYPE(WithClause, WithClause) out, const WithClause *node)
2767
+ _outPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) out, const PrepareStmt *node)
2314
2768
  {
2315
- WRITE_LIST_FIELD(ctes, ctes, ctes);
2316
- WRITE_BOOL_FIELD(recursive, recursive, recursive);
2317
- WRITE_INT_FIELD(location, location, location);
2769
+ WRITE_STRING_FIELD(name, name, name);
2770
+ WRITE_LIST_FIELD(argtypes, argtypes, argtypes);
2771
+ WRITE_NODE_PTR_FIELD(query, query, query);
2318
2772
  }
2319
2773
 
2320
2774
  static void
2321
- _outInferClause(OUT_TYPE(InferClause, InferClause) out, const InferClause *node)
2775
+ _outExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) out, const ExecuteStmt *node)
2322
2776
  {
2323
- WRITE_LIST_FIELD(index_elems, indexElems, indexElems);
2324
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2325
- WRITE_STRING_FIELD(conname, conname, conname);
2326
- WRITE_INT_FIELD(location, location, location);
2777
+ WRITE_STRING_FIELD(name, name, name);
2778
+ WRITE_LIST_FIELD(params, params, params);
2327
2779
  }
2328
2780
 
2329
2781
  static void
2330
- _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out, const OnConflictClause *node)
2782
+ _outDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) out, const DeallocateStmt *node)
2331
2783
  {
2332
- WRITE_ENUM_FIELD(OnConflictAction, action, action, action);
2333
- WRITE_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
2334
- WRITE_LIST_FIELD(target_list, targetList, targetList);
2335
- WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2784
+ WRITE_STRING_FIELD(name, name, name);
2785
+ WRITE_BOOL_FIELD(isall, isall, isall);
2336
2786
  WRITE_INT_FIELD(location, location, location);
2337
2787
  }
2338
2788
 
2339
2789
  static void
2340
- _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const CommonTableExpr *node)
2790
+ _outDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) out, const DropOwnedStmt *node)
2341
2791
  {
2342
- WRITE_STRING_FIELD(ctename, ctename, ctename);
2343
- WRITE_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
2344
- WRITE_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
2345
- WRITE_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
2346
- WRITE_INT_FIELD(location, location, location);
2347
- WRITE_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
2348
- WRITE_INT_FIELD(cterefcount, cterefcount, cterefcount);
2349
- WRITE_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
2350
- WRITE_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
2351
- WRITE_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
2352
- WRITE_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
2792
+ WRITE_LIST_FIELD(roles, roles, roles);
2793
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2353
2794
  }
2354
2795
 
2355
2796
  static void
2356
- _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out, const RoleSpec *node)
2797
+ _outReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) out, const ReassignOwnedStmt *node)
2357
2798
  {
2358
- WRITE_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
2359
- WRITE_STRING_FIELD(rolename, rolename, rolename);
2360
- WRITE_INT_FIELD(location, location, location);
2799
+ WRITE_LIST_FIELD(roles, roles, roles);
2800
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
2361
2801
  }
2362
2802
 
2363
2803
  static void
2364
- _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out, const TriggerTransition *node)
2804
+ _outAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) out, const AlterTSDictionaryStmt *node)
2365
2805
  {
2366
- WRITE_STRING_FIELD(name, name, name);
2367
- WRITE_BOOL_FIELD(is_new, isNew, isNew);
2368
- WRITE_BOOL_FIELD(is_table, isTable, isTable);
2806
+ WRITE_LIST_FIELD(dictname, dictname, dictname);
2807
+ WRITE_LIST_FIELD(options, options, options);
2369
2808
  }
2370
2809
 
2371
2810
  static void
2372
- _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out, const PartitionElem *node)
2811
+ _outAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) out, const AlterTSConfigurationStmt *node)
2373
2812
  {
2374
- WRITE_STRING_FIELD(name, name, name);
2375
- WRITE_NODE_PTR_FIELD(expr, expr, expr);
2376
- WRITE_LIST_FIELD(collation, collation, collation);
2377
- WRITE_LIST_FIELD(opclass, opclass, opclass);
2378
- WRITE_INT_FIELD(location, location, location);
2813
+ WRITE_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
2814
+ WRITE_LIST_FIELD(cfgname, cfgname, cfgname);
2815
+ WRITE_LIST_FIELD(tokentype, tokentype, tokentype);
2816
+ WRITE_LIST_FIELD(dicts, dicts, dicts);
2817
+ WRITE_BOOL_FIELD(override, override, override);
2818
+ WRITE_BOOL_FIELD(replace, replace, replace);
2819
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2379
2820
  }
2380
2821
 
2381
2822
  static void
2382
- _outPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) out, const PartitionSpec *node)
2823
+ _outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out, const PublicationTable *node)
2383
2824
  {
2384
- WRITE_STRING_FIELD(strategy, strategy, strategy);
2385
- WRITE_LIST_FIELD(part_params, partParams, partParams);
2386
- WRITE_INT_FIELD(location, location, location);
2825
+ WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2826
+ WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2827
+ WRITE_LIST_FIELD(columns, columns, columns);
2387
2828
  }
2388
2829
 
2389
2830
  static void
2390
- _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) out, const PartitionBoundSpec *node)
2831
+ _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out, const PublicationObjSpec *node)
2391
2832
  {
2392
- WRITE_CHAR_FIELD(strategy, strategy, strategy);
2393
- WRITE_BOOL_FIELD(is_default, is_default, is_default);
2394
- WRITE_INT_FIELD(modulus, modulus, modulus);
2395
- WRITE_INT_FIELD(remainder, remainder, remainder);
2396
- WRITE_LIST_FIELD(listdatums, listdatums, listdatums);
2397
- WRITE_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
2398
- WRITE_LIST_FIELD(upperdatums, upperdatums, upperdatums);
2833
+ WRITE_ENUM_FIELD(PublicationObjSpecType, pubobjtype, pubobjtype, pubobjtype);
2834
+ WRITE_STRING_FIELD(name, name, name);
2835
+ WRITE_SPECIFIC_NODE_PTR_FIELD(PublicationTable, publication_table, pubtable, pubtable, pubtable);
2399
2836
  WRITE_INT_FIELD(location, location, location);
2400
2837
  }
2401
2838
 
2402
2839
  static void
2403
- _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out, const PartitionRangeDatum *node)
2840
+ _outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) out, const CreatePublicationStmt *node)
2404
2841
  {
2405
- WRITE_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
2406
- WRITE_NODE_PTR_FIELD(value, value, value);
2407
- WRITE_INT_FIELD(location, location, location);
2842
+ WRITE_STRING_FIELD(pubname, pubname, pubname);
2843
+ WRITE_LIST_FIELD(options, options, options);
2844
+ WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects);
2845
+ WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2408
2846
  }
2409
2847
 
2410
2848
  static void
2411
- _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out, const PartitionCmd *node)
2849
+ _outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) out, const AlterPublicationStmt *node)
2412
2850
  {
2413
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
2414
- WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
2851
+ WRITE_STRING_FIELD(pubname, pubname, pubname);
2852
+ WRITE_LIST_FIELD(options, options, options);
2853
+ WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects);
2854
+ WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2855
+ WRITE_ENUM_FIELD(AlterPublicationAction, action, action, action);
2415
2856
  }
2416
2857
 
2417
2858
  static void
2418
- _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out, const VacuumRelation *node)
2859
+ _outCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) out, const CreateSubscriptionStmt *node)
2419
2860
  {
2420
- WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2421
- WRITE_UINT_FIELD(oid, oid, oid);
2422
- WRITE_LIST_FIELD(va_cols, va_cols, va_cols);
2861
+ WRITE_STRING_FIELD(subname, subname, subname);
2862
+ WRITE_STRING_FIELD(conninfo, conninfo, conninfo);
2863
+ WRITE_LIST_FIELD(publication, publication, publication);
2864
+ WRITE_LIST_FIELD(options, options, options);
2423
2865
  }
2424
2866
 
2425
2867
  static void
2426
- _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out, const InlineCodeBlock *node)
2868
+ _outAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) out, const AlterSubscriptionStmt *node)
2427
2869
  {
2428
- WRITE_STRING_FIELD(source_text, source_text, source_text);
2429
- WRITE_UINT_FIELD(lang_oid, langOid, langOid);
2430
- WRITE_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
2431
- WRITE_BOOL_FIELD(atomic, atomic, atomic);
2870
+ WRITE_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
2871
+ WRITE_STRING_FIELD(subname, subname, subname);
2872
+ WRITE_STRING_FIELD(conninfo, conninfo, conninfo);
2873
+ WRITE_LIST_FIELD(publication, publication, publication);
2874
+ WRITE_LIST_FIELD(options, options, options);
2432
2875
  }
2433
2876
 
2434
2877
  static void
2435
- _outCallContext(OUT_TYPE(CallContext, CallContext) out, const CallContext *node)
2878
+ _outDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) out, const DropSubscriptionStmt *node)
2436
2879
  {
2437
- WRITE_BOOL_FIELD(atomic, atomic, atomic);
2880
+ WRITE_STRING_FIELD(subname, subname, subname);
2881
+ WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2882
+ WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2438
2883
  }
2439
2884