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 Alias * _readAlias(OUT_TYPE(Alias, Alias) msg);
4
4
  static RangeVar * _readRangeVar(OUT_TYPE(RangeVar, RangeVar) msg);
5
5
  static TableFunc * _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg);
6
- static Expr * _readExpr(OUT_TYPE(Expr, Expr) msg);
6
+ static IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg);
7
7
  static Var * _readVar(OUT_TYPE(Var, Var) msg);
8
8
  static Param * _readParam(OUT_TYPE(Param, Param) msg);
9
9
  static Aggref * _readAggref(OUT_TYPE(Aggref, Aggref) msg);
10
10
  static GroupingFunc * _readGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) msg);
11
11
  static WindowFunc * _readWindowFunc(OUT_TYPE(WindowFunc, WindowFunc) msg);
12
+ static WindowFuncRunCondition * _readWindowFuncRunCondition(OUT_TYPE(WindowFuncRunCondition, WindowFuncRunCondition) msg);
13
+ static MergeSupportFunc * _readMergeSupportFunc(OUT_TYPE(MergeSupportFunc, MergeSupportFunc) msg);
12
14
  static SubscriptingRef * _readSubscriptingRef(OUT_TYPE(SubscriptingRef, SubscriptingRef) msg);
13
15
  static FuncExpr * _readFuncExpr(OUT_TYPE(FuncExpr, FuncExpr) msg);
14
16
  static NamedArgExpr * _readNamedArgExpr(OUT_TYPE(NamedArgExpr, NamedArgExpr) msg);
@@ -37,8 +39,19 @@ static CoalesceExpr * _readCoalesceExpr(OUT_TYPE(CoalesceExpr, CoalesceExpr) msg
37
39
  static MinMaxExpr * _readMinMaxExpr(OUT_TYPE(MinMaxExpr, MinMaxExpr) msg);
38
40
  static SQLValueFunction * _readSQLValueFunction(OUT_TYPE(SQLValueFunction, SQLValueFunction) msg);
39
41
  static XmlExpr * _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg);
42
+ static JsonFormat * _readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg);
43
+ static JsonReturning * _readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg);
44
+ static JsonValueExpr * _readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg);
45
+ static JsonConstructorExpr * _readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg);
46
+ static JsonIsPredicate * _readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg);
47
+ static JsonBehavior * _readJsonBehavior(OUT_TYPE(JsonBehavior, JsonBehavior) msg);
48
+ static JsonExpr * _readJsonExpr(OUT_TYPE(JsonExpr, JsonExpr) msg);
49
+ static JsonTablePath * _readJsonTablePath(OUT_TYPE(JsonTablePath, JsonTablePath) msg);
50
+ static JsonTablePathScan * _readJsonTablePathScan(OUT_TYPE(JsonTablePathScan, JsonTablePathScan) msg);
51
+ static JsonTableSiblingJoin * _readJsonTableSiblingJoin(OUT_TYPE(JsonTableSiblingJoin, JsonTableSiblingJoin) msg);
40
52
  static NullTest * _readNullTest(OUT_TYPE(NullTest, NullTest) msg);
41
53
  static BooleanTest * _readBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) msg);
54
+ static MergeAction * _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg);
42
55
  static CoerceToDomain * _readCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) msg);
43
56
  static CoerceToDomainValue * _readCoerceToDomainValue(OUT_TYPE(CoerceToDomainValue, CoerceToDomainValue) msg);
44
57
  static SetToDefault * _readSetToDefault(OUT_TYPE(SetToDefault, SetToDefault) msg);
@@ -50,176 +63,202 @@ static RangeTblRef * _readRangeTblRef(OUT_TYPE(RangeTblRef, RangeTblRef) msg);
50
63
  static JoinExpr * _readJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) msg);
51
64
  static FromExpr * _readFromExpr(OUT_TYPE(FromExpr, FromExpr) msg);
52
65
  static OnConflictExpr * _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg);
53
- static IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg);
54
- static RawStmt * _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg);
55
66
  static Query * _readQuery(OUT_TYPE(Query, Query) msg);
67
+ static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg);
68
+ static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg);
69
+ static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg);
70
+ static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg);
71
+ static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg);
72
+ static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg);
73
+ static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg);
74
+ static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg);
75
+ static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg);
76
+ static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg);
77
+ static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg);
78
+ static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg);
79
+ static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg);
80
+ static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg);
81
+ static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg);
82
+ static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg);
83
+ static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg);
84
+ static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg);
85
+ static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg);
86
+ static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg);
87
+ static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg);
88
+ static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg);
89
+ static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg);
90
+ static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg);
91
+ static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg);
92
+ static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg);
93
+ static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg);
94
+ static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg);
95
+ static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg);
96
+ static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg);
97
+ static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg);
98
+ static SinglePartitionSpec * _readSinglePartitionSpec(OUT_TYPE(SinglePartitionSpec, SinglePartitionSpec) msg);
99
+ static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg);
100
+ static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg);
101
+ static RTEPermissionInfo * _readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg);
102
+ static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg);
103
+ static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg);
104
+ static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg);
105
+ static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg);
106
+ static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg);
107
+ static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg);
108
+ static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg);
109
+ static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg);
110
+ static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg);
111
+ static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg);
112
+ static CTESearchClause * _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg);
113
+ static CTECycleClause * _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg);
114
+ static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg);
115
+ static MergeWhenClause * _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg);
116
+ static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg);
117
+ static JsonOutput * _readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg);
118
+ static JsonArgument * _readJsonArgument(OUT_TYPE(JsonArgument, JsonArgument) msg);
119
+ static JsonFuncExpr * _readJsonFuncExpr(OUT_TYPE(JsonFuncExpr, JsonFuncExpr) msg);
120
+ static JsonTablePathSpec * _readJsonTablePathSpec(OUT_TYPE(JsonTablePathSpec, JsonTablePathSpec) msg);
121
+ static JsonTable * _readJsonTable(OUT_TYPE(JsonTable, JsonTable) msg);
122
+ static JsonTableColumn * _readJsonTableColumn(OUT_TYPE(JsonTableColumn, JsonTableColumn) msg);
123
+ static JsonKeyValue * _readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg);
124
+ static JsonParseExpr * _readJsonParseExpr(OUT_TYPE(JsonParseExpr, JsonParseExpr) msg);
125
+ static JsonScalarExpr * _readJsonScalarExpr(OUT_TYPE(JsonScalarExpr, JsonScalarExpr) msg);
126
+ static JsonSerializeExpr * _readJsonSerializeExpr(OUT_TYPE(JsonSerializeExpr, JsonSerializeExpr) msg);
127
+ static JsonObjectConstructor * _readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg);
128
+ static JsonArrayConstructor * _readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg);
129
+ static JsonArrayQueryConstructor * _readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg);
130
+ static JsonAggConstructor * _readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg);
131
+ static JsonObjectAgg * _readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg);
132
+ static JsonArrayAgg * _readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg);
133
+ static RawStmt * _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg);
56
134
  static InsertStmt * _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg);
57
135
  static DeleteStmt * _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg);
58
136
  static UpdateStmt * _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg);
137
+ static MergeStmt * _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg);
59
138
  static SelectStmt * _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg);
139
+ static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg);
140
+ static ReturnStmt * _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg);
141
+ static PLAssignStmt * _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg);
142
+ static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg);
60
143
  static AlterTableStmt * _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg);
144
+ static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg);
61
145
  static AlterTableCmd * _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg);
146
+ static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg);
62
147
  static AlterDomainStmt * _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg);
63
- static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg);
64
148
  static GrantStmt * _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg);
149
+ static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg);
150
+ static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg);
65
151
  static GrantRoleStmt * _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg);
66
152
  static AlterDefaultPrivilegesStmt * _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg);
67
- static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg);
68
- static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg);
69
153
  static CopyStmt * _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg);
154
+ static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg);
155
+ static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg);
70
156
  static CreateStmt * _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg);
157
+ static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg);
158
+ static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg);
159
+ static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg);
160
+ static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg);
161
+ static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg);
162
+ static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg);
163
+ static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg);
164
+ static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg);
165
+ static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg);
166
+ static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg);
167
+ static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg);
168
+ static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg);
169
+ static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg);
170
+ static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg);
171
+ static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg);
172
+ static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg);
173
+ static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg);
174
+ static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg);
175
+ static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg);
176
+ static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg);
177
+ static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg);
178
+ static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg);
179
+ static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg);
180
+ static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg);
181
+ static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg);
182
+ static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg);
183
+ static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg);
184
+ static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg);
185
+ static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg);
186
+ static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg);
71
187
  static DefineStmt * _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg);
188
+ static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg);
189
+ static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg);
190
+ static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg);
191
+ static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg);
192
+ static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg);
72
193
  static DropStmt * _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg);
73
194
  static TruncateStmt * _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg);
74
195
  static CommentStmt * _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg);
196
+ static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg);
197
+ static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg);
198
+ static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg);
75
199
  static FetchStmt * _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg);
76
200
  static IndexStmt * _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg);
201
+ static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg);
202
+ static StatsElem * _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg);
203
+ static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg);
77
204
  static CreateFunctionStmt * _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg);
205
+ static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg);
78
206
  static AlterFunctionStmt * _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg);
79
207
  static DoStmt * _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg);
208
+ static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg);
209
+ static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg);
210
+ static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg);
80
211
  static RenameStmt * _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg);
212
+ static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg);
213
+ static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg);
214
+ static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg);
215
+ static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg);
216
+ static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg);
81
217
  static RuleStmt * _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg);
82
218
  static NotifyStmt * _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg);
83
219
  static ListenStmt * _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg);
84
220
  static UnlistenStmt * _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg);
85
221
  static TransactionStmt * _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg);
222
+ static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg);
223
+ static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg);
224
+ static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg);
225
+ static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg);
86
226
  static ViewStmt * _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg);
87
227
  static LoadStmt * _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg);
88
- static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg);
89
228
  static CreatedbStmt * _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg);
229
+ static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg);
230
+ static AlterDatabaseRefreshCollStmt * _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg);
231
+ static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg);
90
232
  static DropdbStmt * _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg);
233
+ static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg);
234
+ static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg);
91
235
  static VacuumStmt * _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg);
236
+ static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg);
92
237
  static ExplainStmt * _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg);
93
238
  static CreateTableAsStmt * _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg);
94
- static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg);
95
- static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg);
96
- static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg);
97
- static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg);
239
+ static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg);
240
+ static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg);
98
241
  static DiscardStmt * _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg);
99
- static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg);
100
- static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg);
101
- static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg);
102
- static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg);
103
- static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg);
104
242
  static LockStmt * _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg);
105
243
  static ConstraintsSetStmt * _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg);
106
244
  static ReindexStmt * _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg);
107
- static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg);
108
- static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg);
109
- static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg);
110
- static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg);
111
- static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg);
112
245
  static CreateConversionStmt * _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg);
113
246
  static CreateCastStmt * _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg);
114
- static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg);
115
- static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg);
116
- static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg);
247
+ static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg);
117
248
  static PrepareStmt * _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg);
118
249
  static ExecuteStmt * _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg);
119
250
  static DeallocateStmt * _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg);
120
- static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg);
121
- static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg);
122
- static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg);
123
- static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg);
124
- static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg);
125
- static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg);
126
- static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg);
127
- static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg);
128
251
  static DropOwnedStmt * _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg);
129
252
  static ReassignOwnedStmt * _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg);
130
- static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg);
131
- static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg);
132
- static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg);
133
- static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg);
134
253
  static AlterTSDictionaryStmt * _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg);
135
254
  static AlterTSConfigurationStmt * _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg);
136
- static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg);
137
- static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg);
138
- static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg);
139
- static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg);
140
- static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg);
141
- static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg);
142
- static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg);
143
- static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg);
144
- static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg);
145
- static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg);
146
- static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg);
147
- static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg);
148
- static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg);
149
- static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg);
150
- static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg);
151
- static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg);
152
- static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg);
153
- static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg);
154
- static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg);
155
- static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg);
156
- static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg);
157
- static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg);
158
- static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg);
159
- static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg);
255
+ static PublicationTable * _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg);
256
+ static PublicationObjSpec * _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg);
160
257
  static CreatePublicationStmt * _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg);
161
258
  static AlterPublicationStmt * _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg);
162
259
  static CreateSubscriptionStmt * _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg);
163
260
  static AlterSubscriptionStmt * _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg);
164
261
  static DropSubscriptionStmt * _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg);
165
- static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg);
166
- static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg);
167
- static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg);
168
- static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg);
169
- static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg);
170
- static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg);
171
- static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg);
172
- static A_Const * _readAConst(OUT_TYPE(A_Const, AConst) msg);
173
- static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg);
174
- static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg);
175
- static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg);
176
- static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg);
177
- static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg);
178
- static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg);
179
- static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg);
180
- static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg);
181
- static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg);
182
- static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg);
183
- static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg);
184
- static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg);
185
- static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg);
186
- static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg);
187
- static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg);
188
- static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg);
189
- static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg);
190
- static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg);
191
- static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg);
192
- static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg);
193
- static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg);
194
- static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg);
195
- static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg);
196
- static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg);
197
- static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg);
198
- static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg);
199
- static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg);
200
- static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg);
201
- static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg);
202
- static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg);
203
- static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg);
204
- static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg);
205
- static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg);
206
- static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg);
207
- static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg);
208
- static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg);
209
- static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg);
210
- static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg);
211
- static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg);
212
- static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg);
213
- static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg);
214
- static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg);
215
- static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg);
216
- static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg);
217
- static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg);
218
- static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg);
219
- static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg);
220
- static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg);
221
- static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg);
222
- static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg);
223
262
 
224
263
 
225
264
  static Alias *
@@ -249,6 +288,7 @@ static TableFunc *
249
288
  _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg)
250
289
  {
251
290
  TableFunc *node = makeNode(TableFunc);
291
+ READ_ENUM_FIELD(TableFuncType, functype, functype, functype);
252
292
  READ_LIST_FIELD(ns_uris, ns_uris, ns_uris);
253
293
  READ_LIST_FIELD(ns_names, ns_names, ns_names);
254
294
  READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
@@ -259,16 +299,27 @@ _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg)
259
299
  READ_LIST_FIELD(colcollations, colcollations, colcollations);
260
300
  READ_LIST_FIELD(colexprs, colexprs, colexprs);
261
301
  READ_LIST_FIELD(coldefexprs, coldefexprs, coldefexprs);
302
+ READ_LIST_FIELD(colvalexprs, colvalexprs, colvalexprs);
303
+ READ_LIST_FIELD(passingvalexprs, passingvalexprs, passingvalexprs);
262
304
  READ_BITMAPSET_FIELD(notnulls, notnulls, notnulls);
305
+ READ_NODE_PTR_FIELD(plan, plan, plan);
263
306
  READ_INT_FIELD(ordinalitycol, ordinalitycol, ordinalitycol);
264
307
  READ_INT_FIELD(location, location, location);
265
308
  return node;
266
309
  }
267
310
 
268
- static Expr *
269
- _readExpr(OUT_TYPE(Expr, Expr) msg)
311
+ static IntoClause *
312
+ _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg)
270
313
  {
271
- Expr *node = makeNode(Expr);
314
+ IntoClause *node = makeNode(IntoClause);
315
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
316
+ READ_LIST_FIELD(col_names, colNames, colNames);
317
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
318
+ READ_LIST_FIELD(options, options, options);
319
+ READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
320
+ READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
321
+ READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
322
+ READ_BOOL_FIELD(skip_data, skipData, skipData);
272
323
  return node;
273
324
  }
274
325
 
@@ -276,14 +327,13 @@ static Var *
276
327
  _readVar(OUT_TYPE(Var, Var) msg)
277
328
  {
278
329
  Var *node = makeNode(Var);
279
- READ_UINT_FIELD(varno, varno, varno);
330
+ READ_INT_FIELD(varno, varno, varno);
280
331
  READ_INT_FIELD(varattno, varattno, varattno);
281
332
  READ_UINT_FIELD(vartype, vartype, vartype);
282
333
  READ_INT_FIELD(vartypmod, vartypmod, vartypmod);
283
334
  READ_UINT_FIELD(varcollid, varcollid, varcollid);
335
+ READ_BITMAPSET_FIELD(varnullingrels, varnullingrels, varnullingrels);
284
336
  READ_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup);
285
- READ_UINT_FIELD(varnosyn, varnosyn, varnosyn);
286
- READ_INT_FIELD(varattnosyn, varattnosyn, varattnosyn);
287
337
  READ_INT_FIELD(location, location, location);
288
338
  return node;
289
339
  }
@@ -309,18 +359,19 @@ _readAggref(OUT_TYPE(Aggref, Aggref) msg)
309
359
  READ_UINT_FIELD(aggtype, aggtype, aggtype);
310
360
  READ_UINT_FIELD(aggcollid, aggcollid, aggcollid);
311
361
  READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
312
- READ_UINT_FIELD(aggtranstype, aggtranstype, aggtranstype);
313
362
  READ_LIST_FIELD(aggargtypes, aggargtypes, aggargtypes);
314
363
  READ_LIST_FIELD(aggdirectargs, aggdirectargs, aggdirectargs);
315
364
  READ_LIST_FIELD(args, args, args);
316
365
  READ_LIST_FIELD(aggorder, aggorder, aggorder);
317
366
  READ_LIST_FIELD(aggdistinct, aggdistinct, aggdistinct);
318
- READ_EXPR_PTR_FIELD(aggfilter, aggfilter, aggfilter);
367
+ READ_ABSTRACT_PTR_FIELD(aggfilter, aggfilter, aggfilter, Expr*);
319
368
  READ_BOOL_FIELD(aggstar, aggstar, aggstar);
320
369
  READ_BOOL_FIELD(aggvariadic, aggvariadic, aggvariadic);
321
370
  READ_CHAR_FIELD(aggkind, aggkind, aggkind);
322
371
  READ_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
323
372
  READ_ENUM_FIELD(AggSplit, aggsplit, aggsplit, aggsplit);
373
+ READ_INT_FIELD(aggno, aggno, aggno);
374
+ READ_INT_FIELD(aggtransno, aggtransno, aggtransno);
324
375
  READ_INT_FIELD(location, location, location);
325
376
  return node;
326
377
  }
@@ -331,7 +382,6 @@ _readGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) msg)
331
382
  GroupingFunc *node = makeNode(GroupingFunc);
332
383
  READ_LIST_FIELD(args, args, args);
333
384
  READ_LIST_FIELD(refs, refs, refs);
334
- READ_LIST_FIELD(cols, cols, cols);
335
385
  READ_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
336
386
  READ_INT_FIELD(location, location, location);
337
387
  return node;
@@ -346,7 +396,8 @@ _readWindowFunc(OUT_TYPE(WindowFunc, WindowFunc) msg)
346
396
  READ_UINT_FIELD(wincollid, wincollid, wincollid);
347
397
  READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
348
398
  READ_LIST_FIELD(args, args, args);
349
- READ_EXPR_PTR_FIELD(aggfilter, aggfilter, aggfilter);
399
+ READ_ABSTRACT_PTR_FIELD(aggfilter, aggfilter, aggfilter, Expr*);
400
+ READ_LIST_FIELD(run_condition, runCondition, runCondition);
350
401
  READ_UINT_FIELD(winref, winref, winref);
351
402
  READ_BOOL_FIELD(winstar, winstar, winstar);
352
403
  READ_BOOL_FIELD(winagg, winagg, winagg);
@@ -354,18 +405,40 @@ _readWindowFunc(OUT_TYPE(WindowFunc, WindowFunc) msg)
354
405
  return node;
355
406
  }
356
407
 
408
+ static WindowFuncRunCondition *
409
+ _readWindowFuncRunCondition(OUT_TYPE(WindowFuncRunCondition, WindowFuncRunCondition) msg)
410
+ {
411
+ WindowFuncRunCondition *node = makeNode(WindowFuncRunCondition);
412
+ READ_UINT_FIELD(opno, opno, opno);
413
+ READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
414
+ READ_BOOL_FIELD(wfunc_left, wfunc_left, wfunc_left);
415
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
416
+ return node;
417
+ }
418
+
419
+ static MergeSupportFunc *
420
+ _readMergeSupportFunc(OUT_TYPE(MergeSupportFunc, MergeSupportFunc) msg)
421
+ {
422
+ MergeSupportFunc *node = makeNode(MergeSupportFunc);
423
+ READ_UINT_FIELD(msftype, msftype, msftype);
424
+ READ_UINT_FIELD(msfcollid, msfcollid, msfcollid);
425
+ READ_INT_FIELD(location, location, location);
426
+ return node;
427
+ }
428
+
357
429
  static SubscriptingRef *
358
430
  _readSubscriptingRef(OUT_TYPE(SubscriptingRef, SubscriptingRef) msg)
359
431
  {
360
432
  SubscriptingRef *node = makeNode(SubscriptingRef);
361
433
  READ_UINT_FIELD(refcontainertype, refcontainertype, refcontainertype);
362
434
  READ_UINT_FIELD(refelemtype, refelemtype, refelemtype);
435
+ READ_UINT_FIELD(refrestype, refrestype, refrestype);
363
436
  READ_INT_FIELD(reftypmod, reftypmod, reftypmod);
364
437
  READ_UINT_FIELD(refcollid, refcollid, refcollid);
365
438
  READ_LIST_FIELD(refupperindexpr, refupperindexpr, refupperindexpr);
366
439
  READ_LIST_FIELD(reflowerindexpr, reflowerindexpr, reflowerindexpr);
367
- READ_EXPR_PTR_FIELD(refexpr, refexpr, refexpr);
368
- READ_EXPR_PTR_FIELD(refassgnexpr, refassgnexpr, refassgnexpr);
440
+ READ_ABSTRACT_PTR_FIELD(refexpr, refexpr, refexpr, Expr*);
441
+ READ_ABSTRACT_PTR_FIELD(refassgnexpr, refassgnexpr, refassgnexpr, Expr*);
369
442
  return node;
370
443
  }
371
444
 
@@ -389,7 +462,7 @@ static NamedArgExpr *
389
462
  _readNamedArgExpr(OUT_TYPE(NamedArgExpr, NamedArgExpr) msg)
390
463
  {
391
464
  NamedArgExpr *node = makeNode(NamedArgExpr);
392
- READ_EXPR_PTR_FIELD(arg, arg, arg);
465
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
393
466
  READ_STRING_FIELD(name, name, name);
394
467
  READ_INT_FIELD(argnumber, argnumber, argnumber);
395
468
  READ_INT_FIELD(location, location, location);
@@ -401,7 +474,6 @@ _readOpExpr(OUT_TYPE(OpExpr, OpExpr) msg)
401
474
  {
402
475
  OpExpr *node = makeNode(OpExpr);
403
476
  READ_UINT_FIELD(opno, opno, opno);
404
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
405
477
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
406
478
  READ_BOOL_FIELD(opretset, opretset, opretset);
407
479
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -416,7 +488,6 @@ _readDistinctExpr(OUT_TYPE(DistinctExpr, DistinctExpr) msg)
416
488
  {
417
489
  DistinctExpr *node = makeNode(DistinctExpr);
418
490
  READ_UINT_FIELD(opno, opno, opno);
419
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
420
491
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
421
492
  READ_BOOL_FIELD(opretset, opretset, opretset);
422
493
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -431,7 +502,6 @@ _readNullIfExpr(OUT_TYPE(NullIfExpr, NullIfExpr) msg)
431
502
  {
432
503
  NullIfExpr *node = makeNode(NullIfExpr);
433
504
  READ_UINT_FIELD(opno, opno, opno);
434
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
435
505
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
436
506
  READ_BOOL_FIELD(opretset, opretset, opretset);
437
507
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -446,7 +516,6 @@ _readScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) msg)
446
516
  {
447
517
  ScalarArrayOpExpr *node = makeNode(ScalarArrayOpExpr);
448
518
  READ_UINT_FIELD(opno, opno, opno);
449
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
450
519
  READ_BOOL_FIELD(use_or, useOr, useOr);
451
520
  READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
452
521
  READ_LIST_FIELD(args, args, args);
@@ -512,7 +581,7 @@ static FieldSelect *
512
581
  _readFieldSelect(OUT_TYPE(FieldSelect, FieldSelect) msg)
513
582
  {
514
583
  FieldSelect *node = makeNode(FieldSelect);
515
- READ_EXPR_PTR_FIELD(arg, arg, arg);
584
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
516
585
  READ_INT_FIELD(fieldnum, fieldnum, fieldnum);
517
586
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
518
587
  READ_INT_FIELD(resulttypmod, resulttypmod, resulttypmod);
@@ -524,7 +593,7 @@ static FieldStore *
524
593
  _readFieldStore(OUT_TYPE(FieldStore, FieldStore) msg)
525
594
  {
526
595
  FieldStore *node = makeNode(FieldStore);
527
- READ_EXPR_PTR_FIELD(arg, arg, arg);
596
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
528
597
  READ_LIST_FIELD(newvals, newvals, newvals);
529
598
  READ_LIST_FIELD(fieldnums, fieldnums, fieldnums);
530
599
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
@@ -535,7 +604,7 @@ static RelabelType *
535
604
  _readRelabelType(OUT_TYPE(RelabelType, RelabelType) msg)
536
605
  {
537
606
  RelabelType *node = makeNode(RelabelType);
538
- READ_EXPR_PTR_FIELD(arg, arg, arg);
607
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
539
608
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
540
609
  READ_INT_FIELD(resulttypmod, resulttypmod, resulttypmod);
541
610
  READ_UINT_FIELD(resultcollid, resultcollid, resultcollid);
@@ -548,7 +617,7 @@ static CoerceViaIO *
548
617
  _readCoerceViaIO(OUT_TYPE(CoerceViaIO, CoerceViaIO) msg)
549
618
  {
550
619
  CoerceViaIO *node = makeNode(CoerceViaIO);
551
- READ_EXPR_PTR_FIELD(arg, arg, arg);
620
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
552
621
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
553
622
  READ_UINT_FIELD(resultcollid, resultcollid, resultcollid);
554
623
  READ_ENUM_FIELD(CoercionForm, coerceformat, coerceformat, coerceformat);
@@ -560,8 +629,8 @@ static ArrayCoerceExpr *
560
629
  _readArrayCoerceExpr(OUT_TYPE(ArrayCoerceExpr, ArrayCoerceExpr) msg)
561
630
  {
562
631
  ArrayCoerceExpr *node = makeNode(ArrayCoerceExpr);
563
- READ_EXPR_PTR_FIELD(arg, arg, arg);
564
- READ_EXPR_PTR_FIELD(elemexpr, elemexpr, elemexpr);
632
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
633
+ READ_ABSTRACT_PTR_FIELD(elemexpr, elemexpr, elemexpr, Expr*);
565
634
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
566
635
  READ_INT_FIELD(resulttypmod, resulttypmod, resulttypmod);
567
636
  READ_UINT_FIELD(resultcollid, resultcollid, resultcollid);
@@ -574,7 +643,7 @@ static ConvertRowtypeExpr *
574
643
  _readConvertRowtypeExpr(OUT_TYPE(ConvertRowtypeExpr, ConvertRowtypeExpr) msg)
575
644
  {
576
645
  ConvertRowtypeExpr *node = makeNode(ConvertRowtypeExpr);
577
- READ_EXPR_PTR_FIELD(arg, arg, arg);
646
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
578
647
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
579
648
  READ_ENUM_FIELD(CoercionForm, convertformat, convertformat, convertformat);
580
649
  READ_INT_FIELD(location, location, location);
@@ -585,7 +654,7 @@ static CollateExpr *
585
654
  _readCollateExpr(OUT_TYPE(CollateExpr, CollateExpr) msg)
586
655
  {
587
656
  CollateExpr *node = makeNode(CollateExpr);
588
- READ_EXPR_PTR_FIELD(arg, arg, arg);
657
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
589
658
  READ_UINT_FIELD(coll_oid, collOid, collOid);
590
659
  READ_INT_FIELD(location, location, location);
591
660
  return node;
@@ -597,9 +666,9 @@ _readCaseExpr(OUT_TYPE(CaseExpr, CaseExpr) msg)
597
666
  CaseExpr *node = makeNode(CaseExpr);
598
667
  READ_UINT_FIELD(casetype, casetype, casetype);
599
668
  READ_UINT_FIELD(casecollid, casecollid, casecollid);
600
- READ_EXPR_PTR_FIELD(arg, arg, arg);
669
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
601
670
  READ_LIST_FIELD(args, args, args);
602
- READ_EXPR_PTR_FIELD(defresult, defresult, defresult);
671
+ READ_ABSTRACT_PTR_FIELD(defresult, defresult, defresult, Expr*);
603
672
  READ_INT_FIELD(location, location, location);
604
673
  return node;
605
674
  }
@@ -608,8 +677,8 @@ static CaseWhen *
608
677
  _readCaseWhen(OUT_TYPE(CaseWhen, CaseWhen) msg)
609
678
  {
610
679
  CaseWhen *node = makeNode(CaseWhen);
611
- READ_EXPR_PTR_FIELD(expr, expr, expr);
612
- READ_EXPR_PTR_FIELD(result, result, result);
680
+ READ_ABSTRACT_PTR_FIELD(expr, expr, expr, Expr*);
681
+ READ_ABSTRACT_PTR_FIELD(result, result, result, Expr*);
613
682
  READ_INT_FIELD(location, location, location);
614
683
  return node;
615
684
  }
@@ -707,17 +776,138 @@ _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg)
707
776
  READ_LIST_FIELD(arg_names, arg_names, arg_names);
708
777
  READ_LIST_FIELD(args, args, args);
709
778
  READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
779
+ READ_BOOL_FIELD(indent, indent, indent);
710
780
  READ_UINT_FIELD(type, type, type);
711
781
  READ_INT_FIELD(typmod, typmod, typmod);
712
782
  READ_INT_FIELD(location, location, location);
713
783
  return node;
714
784
  }
715
785
 
716
- static NullTest *
786
+ static JsonFormat *
787
+ _readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg)
788
+ {
789
+ JsonFormat *node = makeNode(JsonFormat);
790
+ READ_ENUM_FIELD(JsonFormatType, format_type, format_type, format_type);
791
+ READ_ENUM_FIELD(JsonEncoding, encoding, encoding, encoding);
792
+ READ_INT_FIELD(location, location, location);
793
+ return node;
794
+ }
795
+
796
+ static JsonReturning *
797
+ _readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg)
798
+ {
799
+ JsonReturning *node = makeNode(JsonReturning);
800
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
801
+ READ_UINT_FIELD(typid, typid, typid);
802
+ READ_INT_FIELD(typmod, typmod, typmod);
803
+ return node;
804
+ }
805
+
806
+ static JsonValueExpr *
807
+ _readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg)
808
+ {
809
+ JsonValueExpr *node = makeNode(JsonValueExpr);
810
+ READ_ABSTRACT_PTR_FIELD(raw_expr, raw_expr, raw_expr, Expr*);
811
+ READ_ABSTRACT_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr, Expr*);
812
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
813
+ return node;
814
+ }
815
+
816
+ static JsonConstructorExpr *
817
+ _readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg)
818
+ {
819
+ JsonConstructorExpr *node = makeNode(JsonConstructorExpr);
820
+ READ_ENUM_FIELD(JsonConstructorType, type, type, type);
821
+ READ_LIST_FIELD(args, args, args);
822
+ READ_ABSTRACT_PTR_FIELD(func, func, func, Expr*);
823
+ READ_ABSTRACT_PTR_FIELD(coercion, coercion, coercion, Expr*);
824
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
825
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
826
+ READ_BOOL_FIELD(unique, unique, unique);
827
+ READ_INT_FIELD(location, location, location);
828
+ return node;
829
+ }
830
+
831
+ static JsonIsPredicate *
832
+ _readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg)
833
+ {
834
+ JsonIsPredicate *node = makeNode(JsonIsPredicate);
835
+ READ_NODE_PTR_FIELD(expr, expr, expr);
836
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
837
+ READ_ENUM_FIELD(JsonValueType, item_type, item_type, item_type);
838
+ READ_BOOL_FIELD(unique_keys, unique_keys, unique_keys);
839
+ READ_INT_FIELD(location, location, location);
840
+ return node;
841
+ }
842
+
843
+ static JsonBehavior *
844
+ _readJsonBehavior(OUT_TYPE(JsonBehavior, JsonBehavior) msg)
845
+ {
846
+ JsonBehavior *node = makeNode(JsonBehavior);
847
+ READ_ENUM_FIELD(JsonBehaviorType, btype, btype, btype);
848
+ READ_NODE_PTR_FIELD(expr, expr, expr);
849
+ READ_BOOL_FIELD(coerce, coerce, coerce);
850
+ READ_INT_FIELD(location, location, location);
851
+ return node;
852
+ }
853
+
854
+ static JsonExpr *
855
+ _readJsonExpr(OUT_TYPE(JsonExpr, JsonExpr) msg)
856
+ {
857
+ JsonExpr *node = makeNode(JsonExpr);
858
+ READ_ENUM_FIELD(JsonExprOp, op, op, op);
859
+ READ_STRING_FIELD(column_name, column_name, column_name);
860
+ READ_NODE_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr);
861
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
862
+ READ_NODE_PTR_FIELD(path_spec, path_spec, path_spec);
863
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
864
+ READ_LIST_FIELD(passing_names, passing_names, passing_names);
865
+ READ_LIST_FIELD(passing_values, passing_values, passing_values);
866
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
867
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
868
+ READ_BOOL_FIELD(use_io_coercion, use_io_coercion, use_io_coercion);
869
+ READ_BOOL_FIELD(use_json_coercion, use_json_coercion, use_json_coercion);
870
+ READ_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
871
+ READ_BOOL_FIELD(omit_quotes, omit_quotes, omit_quotes);
872
+ READ_UINT_FIELD(collation, collation, collation);
873
+ READ_INT_FIELD(location, location, location);
874
+ return node;
875
+ }
876
+
877
+ static JsonTablePath *
878
+ _readJsonTablePath(OUT_TYPE(JsonTablePath, JsonTablePath) msg)
879
+ {
880
+ JsonTablePath *node = makeNode(JsonTablePath);
881
+ READ_STRING_FIELD(name, name, name);
882
+ return node;
883
+ }
884
+
885
+ static JsonTablePathScan *
886
+ _readJsonTablePathScan(OUT_TYPE(JsonTablePathScan, JsonTablePathScan) msg)
887
+ {
888
+ JsonTablePathScan *node = makeNode(JsonTablePathScan);
889
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonTablePath, json_table_path, path, path, path);
890
+ READ_BOOL_FIELD(error_on_error, errorOnError, errorOnError);
891
+ READ_ABSTRACT_PTR_FIELD(child, child, child, JsonTablePlan*);
892
+ READ_INT_FIELD(col_min, colMin, colMin);
893
+ READ_INT_FIELD(col_max, colMax, colMax);
894
+ return node;
895
+ }
896
+
897
+ static JsonTableSiblingJoin *
898
+ _readJsonTableSiblingJoin(OUT_TYPE(JsonTableSiblingJoin, JsonTableSiblingJoin) msg)
899
+ {
900
+ JsonTableSiblingJoin *node = makeNode(JsonTableSiblingJoin);
901
+ READ_ABSTRACT_PTR_FIELD(lplan, lplan, lplan, JsonTablePlan*);
902
+ READ_ABSTRACT_PTR_FIELD(rplan, rplan, rplan, JsonTablePlan*);
903
+ return node;
904
+ }
905
+
906
+ static NullTest *
717
907
  _readNullTest(OUT_TYPE(NullTest, NullTest) msg)
718
908
  {
719
909
  NullTest *node = makeNode(NullTest);
720
- READ_EXPR_PTR_FIELD(arg, arg, arg);
910
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
721
911
  READ_ENUM_FIELD(NullTestType, nulltesttype, nulltesttype, nulltesttype);
722
912
  READ_BOOL_FIELD(argisrow, argisrow, argisrow);
723
913
  READ_INT_FIELD(location, location, location);
@@ -728,17 +918,30 @@ static BooleanTest *
728
918
  _readBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) msg)
729
919
  {
730
920
  BooleanTest *node = makeNode(BooleanTest);
731
- READ_EXPR_PTR_FIELD(arg, arg, arg);
921
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
732
922
  READ_ENUM_FIELD(BoolTestType, booltesttype, booltesttype, booltesttype);
733
923
  READ_INT_FIELD(location, location, location);
734
924
  return node;
735
925
  }
736
926
 
927
+ static MergeAction *
928
+ _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg)
929
+ {
930
+ MergeAction *node = makeNode(MergeAction);
931
+ READ_ENUM_FIELD(MergeMatchKind, match_kind, matchKind, matchKind);
932
+ READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
933
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
934
+ READ_NODE_PTR_FIELD(qual, qual, qual);
935
+ READ_LIST_FIELD(target_list, targetList, targetList);
936
+ READ_LIST_FIELD(update_colnos, updateColnos, updateColnos);
937
+ return node;
938
+ }
939
+
737
940
  static CoerceToDomain *
738
941
  _readCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) msg)
739
942
  {
740
943
  CoerceToDomain *node = makeNode(CoerceToDomain);
741
- READ_EXPR_PTR_FIELD(arg, arg, arg);
944
+ READ_ABSTRACT_PTR_FIELD(arg, arg, arg, Expr*);
742
945
  READ_UINT_FIELD(resulttype, resulttype, resulttype);
743
946
  READ_INT_FIELD(resulttypmod, resulttypmod, resulttypmod);
744
947
  READ_UINT_FIELD(resultcollid, resultcollid, resultcollid);
@@ -802,7 +1005,7 @@ static TargetEntry *
802
1005
  _readTargetEntry(OUT_TYPE(TargetEntry, TargetEntry) msg)
803
1006
  {
804
1007
  TargetEntry *node = makeNode(TargetEntry);
805
- READ_EXPR_PTR_FIELD(expr, expr, expr);
1008
+ READ_ABSTRACT_PTR_FIELD(expr, expr, expr, Expr*);
806
1009
  READ_INT_FIELD(resno, resno, resno);
807
1010
  READ_STRING_FIELD(resname, resname, resname);
808
1011
  READ_UINT_FIELD(ressortgroupref, ressortgroupref, ressortgroupref);
@@ -829,6 +1032,7 @@ _readJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) msg)
829
1032
  READ_NODE_PTR_FIELD(larg, larg, larg);
830
1033
  READ_NODE_PTR_FIELD(rarg, rarg, rarg);
831
1034
  READ_LIST_FIELD(using_clause, usingClause, usingClause);
1035
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
832
1036
  READ_NODE_PTR_FIELD(quals, quals, quals);
833
1037
  READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
834
1038
  READ_INT_FIELD(rtindex, rtindex, rtindex);
@@ -859,31 +1063,6 @@ _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg)
859
1063
  return node;
860
1064
  }
861
1065
 
862
- static IntoClause *
863
- _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg)
864
- {
865
- IntoClause *node = makeNode(IntoClause);
866
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
867
- READ_LIST_FIELD(col_names, colNames, colNames);
868
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
869
- READ_LIST_FIELD(options, options, options);
870
- READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
871
- READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
872
- READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
873
- READ_BOOL_FIELD(skip_data, skipData, skipData);
874
- return node;
875
- }
876
-
877
- static RawStmt *
878
- _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg)
879
- {
880
- RawStmt *node = makeNode(RawStmt);
881
- READ_NODE_PTR_FIELD(stmt, stmt, stmt);
882
- READ_INT_FIELD(stmt_location, stmt_location, stmt_location);
883
- READ_INT_FIELD(stmt_len, stmt_len, stmt_len);
884
- return node;
885
- }
886
-
887
1066
  static Query *
888
1067
  _readQuery(OUT_TYPE(Query, Query) msg)
889
1068
  {
@@ -902,14 +1081,20 @@ _readQuery(OUT_TYPE(Query, Query) msg)
902
1081
  READ_BOOL_FIELD(has_modifying_cte, hasModifyingCTE, hasModifyingCTE);
903
1082
  READ_BOOL_FIELD(has_for_update, hasForUpdate, hasForUpdate);
904
1083
  READ_BOOL_FIELD(has_row_security, hasRowSecurity, hasRowSecurity);
1084
+ READ_BOOL_FIELD(is_return, isReturn, isReturn);
905
1085
  READ_LIST_FIELD(cte_list, cteList, cteList);
906
1086
  READ_LIST_FIELD(rtable, rtable, rtable);
1087
+ READ_LIST_FIELD(rteperminfos, rteperminfos, rteperminfos);
907
1088
  READ_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree);
1089
+ READ_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList);
1090
+ READ_INT_FIELD(merge_target_relation, mergeTargetRelation, mergeTargetRelation);
1091
+ READ_NODE_PTR_FIELD(merge_join_condition, mergeJoinCondition, mergeJoinCondition);
908
1092
  READ_LIST_FIELD(target_list, targetList, targetList);
909
1093
  READ_ENUM_FIELD(OverridingKind, override, override, override);
910
1094
  READ_SPECIFIC_NODE_PTR_FIELD(OnConflictExpr, on_conflict_expr, on_conflict, onConflict, onConflict);
911
1095
  READ_LIST_FIELD(returning_list, returningList, returningList);
912
1096
  READ_LIST_FIELD(group_clause, groupClause, groupClause);
1097
+ READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
913
1098
  READ_LIST_FIELD(grouping_sets, groupingSets, groupingSets);
914
1099
  READ_NODE_PTR_FIELD(having_qual, havingQual, havingQual);
915
1100
  READ_LIST_FIELD(window_clause, windowClause, windowClause);
@@ -927,1047 +1112,1208 @@ _readQuery(OUT_TYPE(Query, Query) msg)
927
1112
  return node;
928
1113
  }
929
1114
 
930
- static InsertStmt *
931
- _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg)
1115
+ static TypeName *
1116
+ _readTypeName(OUT_TYPE(TypeName, TypeName) msg)
932
1117
  {
933
- InsertStmt *node = makeNode(InsertStmt);
934
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
935
- READ_LIST_FIELD(cols, cols, cols);
936
- READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
937
- READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
938
- READ_LIST_FIELD(returning_list, returningList, returningList);
939
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
940
- READ_ENUM_FIELD(OverridingKind, override, override, override);
1118
+ TypeName *node = makeNode(TypeName);
1119
+ READ_LIST_FIELD(names, names, names);
1120
+ READ_UINT_FIELD(type_oid, typeOid, typeOid);
1121
+ READ_BOOL_FIELD(setof, setof, setof);
1122
+ READ_BOOL_FIELD(pct_type, pct_type, pct_type);
1123
+ READ_LIST_FIELD(typmods, typmods, typmods);
1124
+ READ_INT_FIELD(typemod, typemod, typemod);
1125
+ READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
1126
+ READ_INT_FIELD(location, location, location);
941
1127
  return node;
942
1128
  }
943
1129
 
944
- static DeleteStmt *
945
- _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg)
1130
+ static ColumnRef *
1131
+ _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg)
946
1132
  {
947
- DeleteStmt *node = makeNode(DeleteStmt);
948
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
949
- READ_LIST_FIELD(using_clause, usingClause, usingClause);
950
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
951
- READ_LIST_FIELD(returning_list, returningList, returningList);
952
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1133
+ ColumnRef *node = makeNode(ColumnRef);
1134
+ READ_LIST_FIELD(fields, fields, fields);
1135
+ READ_INT_FIELD(location, location, location);
953
1136
  return node;
954
1137
  }
955
1138
 
956
- static UpdateStmt *
957
- _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg)
1139
+ static ParamRef *
1140
+ _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg)
958
1141
  {
959
- UpdateStmt *node = makeNode(UpdateStmt);
960
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
961
- READ_LIST_FIELD(target_list, targetList, targetList);
962
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
963
- READ_LIST_FIELD(from_clause, fromClause, fromClause);
964
- READ_LIST_FIELD(returning_list, returningList, returningList);
965
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1142
+ ParamRef *node = makeNode(ParamRef);
1143
+ READ_INT_FIELD(number, number, number);
1144
+ READ_INT_FIELD(location, location, location);
966
1145
  return node;
967
1146
  }
968
1147
 
969
- static SelectStmt *
970
- _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg)
1148
+ static A_Expr *
1149
+ _readAExpr(OUT_TYPE(A_Expr, AExpr) msg)
971
1150
  {
972
- SelectStmt *node = makeNode(SelectStmt);
973
- READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
974
- READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
975
- READ_LIST_FIELD(target_list, targetList, targetList);
976
- READ_LIST_FIELD(from_clause, fromClause, fromClause);
977
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
978
- READ_LIST_FIELD(group_clause, groupClause, groupClause);
979
- READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
980
- READ_LIST_FIELD(window_clause, windowClause, windowClause);
981
- READ_LIST_FIELD(values_lists, valuesLists, valuesLists);
982
- READ_LIST_FIELD(sort_clause, sortClause, sortClause);
983
- READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
984
- READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
985
- READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
986
- READ_LIST_FIELD(locking_clause, lockingClause, lockingClause);
987
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
988
- READ_ENUM_FIELD(SetOperation, op, op, op);
989
- READ_BOOL_FIELD(all, all, all);
990
- READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
991
- READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1151
+ A_Expr *node = makeNode(A_Expr);
1152
+ READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
1153
+ READ_LIST_FIELD(name, name, name);
1154
+ READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
1155
+ READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
1156
+ READ_INT_FIELD(location, location, location);
992
1157
  return node;
993
1158
  }
994
1159
 
995
- static AlterTableStmt *
996
- _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg)
1160
+ static TypeCast *
1161
+ _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg)
997
1162
  {
998
- AlterTableStmt *node = makeNode(AlterTableStmt);
999
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1000
- READ_LIST_FIELD(cmds, cmds, cmds);
1001
- READ_ENUM_FIELD(ObjectType, relkind, relkind, relkind);
1002
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1163
+ TypeCast *node = makeNode(TypeCast);
1164
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1165
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1166
+ READ_INT_FIELD(location, location, location);
1003
1167
  return node;
1004
1168
  }
1005
1169
 
1006
- static AlterTableCmd *
1007
- _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg)
1170
+ static CollateClause *
1171
+ _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg)
1008
1172
  {
1009
- AlterTableCmd *node = makeNode(AlterTableCmd);
1010
- READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
1011
- READ_STRING_FIELD(name, name, name);
1012
- READ_INT_FIELD(num, num, num);
1013
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1014
- READ_NODE_PTR_FIELD(def, def, def);
1015
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1016
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1017
- READ_BOOL_FIELD(recurse, recurse, recurse);
1173
+ CollateClause *node = makeNode(CollateClause);
1174
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1175
+ READ_LIST_FIELD(collname, collname, collname);
1176
+ READ_INT_FIELD(location, location, location);
1018
1177
  return node;
1019
1178
  }
1020
1179
 
1021
- static AlterDomainStmt *
1022
- _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg)
1180
+ static RoleSpec *
1181
+ _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg)
1023
1182
  {
1024
- AlterDomainStmt *node = makeNode(AlterDomainStmt);
1025
- READ_CHAR_FIELD(subtype, subtype, subtype);
1026
- READ_LIST_FIELD(type_name, typeName, typeName);
1027
- READ_STRING_FIELD(name, name, name);
1028
- READ_NODE_PTR_FIELD(def, def, def);
1029
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1030
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1183
+ RoleSpec *node = makeNode(RoleSpec);
1184
+ READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
1185
+ READ_STRING_FIELD(rolename, rolename, rolename);
1186
+ READ_INT_FIELD(location, location, location);
1031
1187
  return node;
1032
1188
  }
1033
1189
 
1034
- static SetOperationStmt *
1035
- _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg)
1190
+ static FuncCall *
1191
+ _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg)
1036
1192
  {
1037
- SetOperationStmt *node = makeNode(SetOperationStmt);
1038
- READ_ENUM_FIELD(SetOperation, op, op, op);
1039
- READ_BOOL_FIELD(all, all, all);
1040
- READ_NODE_PTR_FIELD(larg, larg, larg);
1041
- READ_NODE_PTR_FIELD(rarg, rarg, rarg);
1042
- READ_LIST_FIELD(col_types, colTypes, colTypes);
1043
- READ_LIST_FIELD(col_typmods, colTypmods, colTypmods);
1044
- READ_LIST_FIELD(col_collations, colCollations, colCollations);
1045
- READ_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1193
+ FuncCall *node = makeNode(FuncCall);
1194
+ READ_LIST_FIELD(funcname, funcname, funcname);
1195
+ READ_LIST_FIELD(args, args, args);
1196
+ READ_LIST_FIELD(agg_order, agg_order, agg_order);
1197
+ READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1198
+ READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1199
+ READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
1200
+ READ_BOOL_FIELD(agg_star, agg_star, agg_star);
1201
+ READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
1202
+ READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
1203
+ READ_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat);
1204
+ READ_INT_FIELD(location, location, location);
1046
1205
  return node;
1047
1206
  }
1048
1207
 
1049
- static GrantStmt *
1050
- _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg)
1208
+ static A_Star *
1209
+ _readAStar(OUT_TYPE(A_Star, AStar) msg)
1051
1210
  {
1052
- GrantStmt *node = makeNode(GrantStmt);
1053
- READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1054
- READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
1055
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1056
- READ_LIST_FIELD(objects, objects, objects);
1057
- READ_LIST_FIELD(privileges, privileges, privileges);
1058
- READ_LIST_FIELD(grantees, grantees, grantees);
1059
- READ_BOOL_FIELD(grant_option, grant_option, grant_option);
1060
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1211
+ A_Star *node = makeNode(A_Star);
1061
1212
  return node;
1062
1213
  }
1063
1214
 
1064
- static GrantRoleStmt *
1065
- _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg)
1215
+ static A_Indices *
1216
+ _readAIndices(OUT_TYPE(A_Indices, AIndices) msg)
1066
1217
  {
1067
- GrantRoleStmt *node = makeNode(GrantRoleStmt);
1068
- READ_LIST_FIELD(granted_roles, granted_roles, granted_roles);
1069
- READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
1070
- READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1071
- READ_BOOL_FIELD(admin_opt, admin_opt, admin_opt);
1072
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1073
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1218
+ A_Indices *node = makeNode(A_Indices);
1219
+ READ_BOOL_FIELD(is_slice, is_slice, is_slice);
1220
+ READ_NODE_PTR_FIELD(lidx, lidx, lidx);
1221
+ READ_NODE_PTR_FIELD(uidx, uidx, uidx);
1074
1222
  return node;
1075
1223
  }
1076
1224
 
1077
- static AlterDefaultPrivilegesStmt *
1078
- _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg)
1225
+ static A_Indirection *
1226
+ _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg)
1079
1227
  {
1080
- AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt);
1081
- READ_LIST_FIELD(options, options, options);
1082
- READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1228
+ A_Indirection *node = makeNode(A_Indirection);
1229
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1230
+ READ_LIST_FIELD(indirection, indirection, indirection);
1083
1231
  return node;
1084
1232
  }
1085
1233
 
1086
- static ClosePortalStmt *
1087
- _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg)
1234
+ static A_ArrayExpr *
1235
+ _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg)
1088
1236
  {
1089
- ClosePortalStmt *node = makeNode(ClosePortalStmt);
1090
- READ_STRING_FIELD(portalname, portalname, portalname);
1237
+ A_ArrayExpr *node = makeNode(A_ArrayExpr);
1238
+ READ_LIST_FIELD(elements, elements, elements);
1239
+ READ_INT_FIELD(location, location, location);
1091
1240
  return node;
1092
1241
  }
1093
1242
 
1094
- static ClusterStmt *
1095
- _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg)
1243
+ static ResTarget *
1244
+ _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg)
1096
1245
  {
1097
- ClusterStmt *node = makeNode(ClusterStmt);
1098
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1099
- READ_STRING_FIELD(indexname, indexname, indexname);
1100
- READ_INT_FIELD(options, options, options);
1246
+ ResTarget *node = makeNode(ResTarget);
1247
+ READ_STRING_FIELD(name, name, name);
1248
+ READ_LIST_FIELD(indirection, indirection, indirection);
1249
+ READ_NODE_PTR_FIELD(val, val, val);
1250
+ READ_INT_FIELD(location, location, location);
1101
1251
  return node;
1102
1252
  }
1103
1253
 
1104
- static CopyStmt *
1105
- _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg)
1254
+ static MultiAssignRef *
1255
+ _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg)
1106
1256
  {
1107
- CopyStmt *node = makeNode(CopyStmt);
1108
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1109
- READ_NODE_PTR_FIELD(query, query, query);
1110
- READ_LIST_FIELD(attlist, attlist, attlist);
1111
- READ_BOOL_FIELD(is_from, is_from, is_from);
1112
- READ_BOOL_FIELD(is_program, is_program, is_program);
1113
- READ_STRING_FIELD(filename, filename, filename);
1114
- READ_LIST_FIELD(options, options, options);
1115
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1257
+ MultiAssignRef *node = makeNode(MultiAssignRef);
1258
+ READ_NODE_PTR_FIELD(source, source, source);
1259
+ READ_INT_FIELD(colno, colno, colno);
1260
+ READ_INT_FIELD(ncolumns, ncolumns, ncolumns);
1116
1261
  return node;
1117
1262
  }
1118
1263
 
1119
- static CreateStmt *
1120
- _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg)
1264
+ static SortBy *
1265
+ _readSortBy(OUT_TYPE(SortBy, SortBy) msg)
1121
1266
  {
1122
- CreateStmt *node = makeNode(CreateStmt);
1123
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1124
- READ_LIST_FIELD(table_elts, tableElts, tableElts);
1125
- READ_LIST_FIELD(inh_relations, inhRelations, inhRelations);
1126
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
1127
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
1128
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
1129
- READ_LIST_FIELD(constraints, constraints, constraints);
1130
- READ_LIST_FIELD(options, options, options);
1131
- READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
1132
- READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1133
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
1134
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1267
+ SortBy *node = makeNode(SortBy);
1268
+ READ_NODE_PTR_FIELD(node, node, node);
1269
+ READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
1270
+ READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
1271
+ READ_LIST_FIELD(use_op, useOp, useOp);
1272
+ READ_INT_FIELD(location, location, location);
1135
1273
  return node;
1136
1274
  }
1137
1275
 
1138
- static DefineStmt *
1139
- _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg)
1276
+ static WindowDef *
1277
+ _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg)
1140
1278
  {
1141
- DefineStmt *node = makeNode(DefineStmt);
1142
- READ_ENUM_FIELD(ObjectType, kind, kind, kind);
1143
- READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
1144
- READ_LIST_FIELD(defnames, defnames, defnames);
1145
- READ_LIST_FIELD(args, args, args);
1146
- READ_LIST_FIELD(definition, definition, definition);
1147
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1148
- READ_BOOL_FIELD(replace, replace, replace);
1279
+ WindowDef *node = makeNode(WindowDef);
1280
+ READ_STRING_FIELD(name, name, name);
1281
+ READ_STRING_FIELD(refname, refname, refname);
1282
+ READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1283
+ READ_LIST_FIELD(order_clause, orderClause, orderClause);
1284
+ READ_INT_FIELD(frame_options, frameOptions, frameOptions);
1285
+ READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1286
+ READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1287
+ READ_INT_FIELD(location, location, location);
1149
1288
  return node;
1150
1289
  }
1151
1290
 
1152
- static DropStmt *
1153
- _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg)
1291
+ static RangeSubselect *
1292
+ _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg)
1154
1293
  {
1155
- DropStmt *node = makeNode(DropStmt);
1156
- READ_LIST_FIELD(objects, objects, objects);
1157
- READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
1158
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1159
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1160
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1294
+ RangeSubselect *node = makeNode(RangeSubselect);
1295
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1296
+ READ_NODE_PTR_FIELD(subquery, subquery, subquery);
1297
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1161
1298
  return node;
1162
1299
  }
1163
1300
 
1164
- static TruncateStmt *
1165
- _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg)
1301
+ static RangeFunction *
1302
+ _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg)
1166
1303
  {
1167
- TruncateStmt *node = makeNode(TruncateStmt);
1168
- READ_LIST_FIELD(relations, relations, relations);
1169
- READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
1170
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1304
+ RangeFunction *node = makeNode(RangeFunction);
1305
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1306
+ READ_BOOL_FIELD(ordinality, ordinality, ordinality);
1307
+ READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
1308
+ READ_LIST_FIELD(functions, functions, functions);
1309
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1310
+ READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1171
1311
  return node;
1172
1312
  }
1173
1313
 
1174
- static CommentStmt *
1175
- _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg)
1314
+ static RangeTableFunc *
1315
+ _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg)
1176
1316
  {
1177
- CommentStmt *node = makeNode(CommentStmt);
1178
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1179
- READ_NODE_PTR_FIELD(object, object, object);
1180
- READ_STRING_FIELD(comment, comment, comment);
1317
+ RangeTableFunc *node = makeNode(RangeTableFunc);
1318
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1319
+ READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
1320
+ READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
1321
+ READ_LIST_FIELD(namespaces, namespaces, namespaces);
1322
+ READ_LIST_FIELD(columns, columns, columns);
1323
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1324
+ READ_INT_FIELD(location, location, location);
1181
1325
  return node;
1182
1326
  }
1183
1327
 
1184
- static FetchStmt *
1185
- _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg)
1328
+ static RangeTableFuncCol *
1329
+ _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg)
1186
1330
  {
1187
- FetchStmt *node = makeNode(FetchStmt);
1188
- READ_ENUM_FIELD(FetchDirection, direction, direction, direction);
1189
- READ_LONG_FIELD(how_many, howMany, howMany);
1190
- READ_STRING_FIELD(portalname, portalname, portalname);
1191
- READ_BOOL_FIELD(ismove, ismove, ismove);
1331
+ RangeTableFuncCol *node = makeNode(RangeTableFuncCol);
1332
+ READ_STRING_FIELD(colname, colname, colname);
1333
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1334
+ READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
1335
+ READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1336
+ READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
1337
+ READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
1338
+ READ_INT_FIELD(location, location, location);
1192
1339
  return node;
1193
1340
  }
1194
1341
 
1195
- static IndexStmt *
1196
- _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg)
1342
+ static RangeTableSample *
1343
+ _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg)
1197
1344
  {
1198
- IndexStmt *node = makeNode(IndexStmt);
1199
- READ_STRING_FIELD(idxname, idxname, idxname);
1200
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1201
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
1202
- READ_STRING_FIELD(table_space, tableSpace, tableSpace);
1203
- READ_LIST_FIELD(index_params, indexParams, indexParams);
1204
- READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
1205
- READ_LIST_FIELD(options, options, options);
1206
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1207
- READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
1208
- READ_STRING_FIELD(idxcomment, idxcomment, idxcomment);
1209
- READ_UINT_FIELD(index_oid, indexOid, indexOid);
1210
- READ_UINT_FIELD(old_node, oldNode, oldNode);
1211
- READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
1212
- READ_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid);
1213
- READ_BOOL_FIELD(unique, unique, unique);
1214
- READ_BOOL_FIELD(primary, primary, primary);
1215
- READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1216
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
1217
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1218
- READ_BOOL_FIELD(transformed, transformed, transformed);
1219
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1220
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1221
- READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
1345
+ RangeTableSample *node = makeNode(RangeTableSample);
1346
+ READ_NODE_PTR_FIELD(relation, relation, relation);
1347
+ READ_LIST_FIELD(method, method, method);
1348
+ READ_LIST_FIELD(args, args, args);
1349
+ READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
1350
+ READ_INT_FIELD(location, location, location);
1222
1351
  return node;
1223
1352
  }
1224
1353
 
1225
- static CreateFunctionStmt *
1226
- _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg)
1354
+ static ColumnDef *
1355
+ _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg)
1227
1356
  {
1228
- CreateFunctionStmt *node = makeNode(CreateFunctionStmt);
1229
- READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
1230
- READ_BOOL_FIELD(replace, replace, replace);
1231
- READ_LIST_FIELD(funcname, funcname, funcname);
1232
- READ_LIST_FIELD(parameters, parameters, parameters);
1233
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
1234
- READ_LIST_FIELD(options, options, options);
1357
+ ColumnDef *node = makeNode(ColumnDef);
1358
+ READ_STRING_FIELD(colname, colname, colname);
1359
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1360
+ READ_STRING_FIELD(compression, compression, compression);
1361
+ READ_INT_FIELD(inhcount, inhcount, inhcount);
1362
+ READ_BOOL_FIELD(is_local, is_local, is_local);
1363
+ READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1364
+ READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
1365
+ READ_CHAR_FIELD(storage, storage, storage);
1366
+ READ_STRING_FIELD(storage_name, storage_name, storage_name);
1367
+ READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
1368
+ READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
1369
+ READ_CHAR_FIELD(identity, identity, identity);
1370
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
1371
+ READ_CHAR_FIELD(generated, generated, generated);
1372
+ READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1373
+ READ_UINT_FIELD(coll_oid, collOid, collOid);
1374
+ READ_LIST_FIELD(constraints, constraints, constraints);
1375
+ READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
1376
+ READ_INT_FIELD(location, location, location);
1235
1377
  return node;
1236
1378
  }
1237
1379
 
1238
- static AlterFunctionStmt *
1239
- _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg)
1380
+ static TableLikeClause *
1381
+ _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg)
1240
1382
  {
1241
- AlterFunctionStmt *node = makeNode(AlterFunctionStmt);
1242
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1243
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1244
- READ_LIST_FIELD(actions, actions, actions);
1383
+ TableLikeClause *node = makeNode(TableLikeClause);
1384
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1385
+ READ_UINT_FIELD(options, options, options);
1386
+ READ_UINT_FIELD(relation_oid, relationOid, relationOid);
1245
1387
  return node;
1246
1388
  }
1247
1389
 
1248
- static DoStmt *
1249
- _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg)
1390
+ static IndexElem *
1391
+ _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg)
1250
1392
  {
1251
- DoStmt *node = makeNode(DoStmt);
1252
- READ_LIST_FIELD(args, args, args);
1393
+ IndexElem *node = makeNode(IndexElem);
1394
+ READ_STRING_FIELD(name, name, name);
1395
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1396
+ READ_STRING_FIELD(indexcolname, indexcolname, indexcolname);
1397
+ READ_LIST_FIELD(collation, collation, collation);
1398
+ READ_LIST_FIELD(opclass, opclass, opclass);
1399
+ READ_LIST_FIELD(opclassopts, opclassopts, opclassopts);
1400
+ READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
1401
+ READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
1253
1402
  return node;
1254
1403
  }
1255
1404
 
1256
- static RenameStmt *
1257
- _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg)
1405
+ static DefElem *
1406
+ _readDefElem(OUT_TYPE(DefElem, DefElem) msg)
1258
1407
  {
1259
- RenameStmt *node = makeNode(RenameStmt);
1260
- READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
1261
- READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
1262
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1263
- READ_NODE_PTR_FIELD(object, object, object);
1264
- READ_STRING_FIELD(subname, subname, subname);
1265
- READ_STRING_FIELD(newname, newname, newname);
1266
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1267
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1408
+ DefElem *node = makeNode(DefElem);
1409
+ READ_STRING_FIELD(defnamespace, defnamespace, defnamespace);
1410
+ READ_STRING_FIELD(defname, defname, defname);
1411
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1412
+ READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
1413
+ READ_INT_FIELD(location, location, location);
1268
1414
  return node;
1269
1415
  }
1270
1416
 
1271
- static RuleStmt *
1272
- _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg)
1417
+ static LockingClause *
1418
+ _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg)
1273
1419
  {
1274
- RuleStmt *node = makeNode(RuleStmt);
1275
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1276
- READ_STRING_FIELD(rulename, rulename, rulename);
1277
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1278
- READ_ENUM_FIELD(CmdType, event, event, event);
1279
- READ_BOOL_FIELD(instead, instead, instead);
1280
- READ_LIST_FIELD(actions, actions, actions);
1281
- READ_BOOL_FIELD(replace, replace, replace);
1420
+ LockingClause *node = makeNode(LockingClause);
1421
+ READ_LIST_FIELD(locked_rels, lockedRels, lockedRels);
1422
+ READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1423
+ READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1282
1424
  return node;
1283
1425
  }
1284
1426
 
1285
- static NotifyStmt *
1286
- _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg)
1427
+ static XmlSerialize *
1428
+ _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg)
1287
1429
  {
1288
- NotifyStmt *node = makeNode(NotifyStmt);
1289
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1290
- READ_STRING_FIELD(payload, payload, payload);
1430
+ XmlSerialize *node = makeNode(XmlSerialize);
1431
+ READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
1432
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1433
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1434
+ READ_BOOL_FIELD(indent, indent, indent);
1435
+ READ_INT_FIELD(location, location, location);
1291
1436
  return node;
1292
1437
  }
1293
1438
 
1294
- static ListenStmt *
1295
- _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg)
1439
+ static PartitionElem *
1440
+ _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg)
1296
1441
  {
1297
- ListenStmt *node = makeNode(ListenStmt);
1298
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1442
+ PartitionElem *node = makeNode(PartitionElem);
1443
+ READ_STRING_FIELD(name, name, name);
1444
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1445
+ READ_LIST_FIELD(collation, collation, collation);
1446
+ READ_LIST_FIELD(opclass, opclass, opclass);
1447
+ READ_INT_FIELD(location, location, location);
1299
1448
  return node;
1300
1449
  }
1301
1450
 
1302
- static UnlistenStmt *
1303
- _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg)
1451
+ static PartitionSpec *
1452
+ _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg)
1304
1453
  {
1305
- UnlistenStmt *node = makeNode(UnlistenStmt);
1306
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1454
+ PartitionSpec *node = makeNode(PartitionSpec);
1455
+ READ_ENUM_FIELD(PartitionStrategy, strategy, strategy, strategy);
1456
+ READ_LIST_FIELD(part_params, partParams, partParams);
1457
+ READ_INT_FIELD(location, location, location);
1307
1458
  return node;
1308
1459
  }
1309
1460
 
1310
- static TransactionStmt *
1311
- _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg)
1461
+ static PartitionBoundSpec *
1462
+ _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg)
1312
1463
  {
1313
- TransactionStmt *node = makeNode(TransactionStmt);
1314
- READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
1315
- READ_LIST_FIELD(options, options, options);
1316
- READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
1317
- READ_STRING_FIELD(gid, gid, gid);
1318
- READ_BOOL_FIELD(chain, chain, chain);
1464
+ PartitionBoundSpec *node = makeNode(PartitionBoundSpec);
1465
+ READ_CHAR_FIELD(strategy, strategy, strategy);
1466
+ READ_BOOL_FIELD(is_default, is_default, is_default);
1467
+ READ_INT_FIELD(modulus, modulus, modulus);
1468
+ READ_INT_FIELD(remainder, remainder, remainder);
1469
+ READ_LIST_FIELD(listdatums, listdatums, listdatums);
1470
+ READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
1471
+ READ_LIST_FIELD(upperdatums, upperdatums, upperdatums);
1472
+ READ_INT_FIELD(location, location, location);
1319
1473
  return node;
1320
1474
  }
1321
1475
 
1322
- static ViewStmt *
1323
- _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg)
1476
+ static PartitionRangeDatum *
1477
+ _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg)
1324
1478
  {
1325
- ViewStmt *node = makeNode(ViewStmt);
1326
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
1327
- READ_LIST_FIELD(aliases, aliases, aliases);
1328
- READ_NODE_PTR_FIELD(query, query, query);
1329
- READ_BOOL_FIELD(replace, replace, replace);
1330
- READ_LIST_FIELD(options, options, options);
1331
- READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
1479
+ PartitionRangeDatum *node = makeNode(PartitionRangeDatum);
1480
+ READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
1481
+ READ_NODE_PTR_FIELD(value, value, value);
1482
+ READ_INT_FIELD(location, location, location);
1332
1483
  return node;
1333
1484
  }
1334
1485
 
1335
- static LoadStmt *
1336
- _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg)
1486
+ static SinglePartitionSpec *
1487
+ _readSinglePartitionSpec(OUT_TYPE(SinglePartitionSpec, SinglePartitionSpec) msg)
1337
1488
  {
1338
- LoadStmt *node = makeNode(LoadStmt);
1339
- READ_STRING_FIELD(filename, filename, filename);
1489
+ SinglePartitionSpec *node = makeNode(SinglePartitionSpec);
1340
1490
  return node;
1341
1491
  }
1342
1492
 
1343
- static CreateDomainStmt *
1344
- _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg)
1493
+ static PartitionCmd *
1494
+ _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg)
1345
1495
  {
1346
- CreateDomainStmt *node = makeNode(CreateDomainStmt);
1347
- READ_LIST_FIELD(domainname, domainname, domainname);
1348
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1349
- READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1350
- READ_LIST_FIELD(constraints, constraints, constraints);
1496
+ PartitionCmd *node = makeNode(PartitionCmd);
1497
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
1498
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
1499
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1351
1500
  return node;
1352
1501
  }
1353
1502
 
1354
- static CreatedbStmt *
1355
- _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg)
1503
+ static RangeTblEntry *
1504
+ _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg)
1356
1505
  {
1357
- CreatedbStmt *node = makeNode(CreatedbStmt);
1358
- READ_STRING_FIELD(dbname, dbname, dbname);
1359
- READ_LIST_FIELD(options, options, options);
1506
+ RangeTblEntry *node = makeNode(RangeTblEntry);
1507
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1508
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
1509
+ READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
1510
+ READ_UINT_FIELD(relid, relid, relid);
1511
+ READ_BOOL_FIELD(inh, inh, inh);
1512
+ READ_CHAR_FIELD(relkind, relkind, relkind);
1513
+ READ_INT_FIELD(rellockmode, rellockmode, rellockmode);
1514
+ READ_UINT_FIELD(perminfoindex, perminfoindex, perminfoindex);
1515
+ READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
1516
+ READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
1517
+ READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
1518
+ READ_ENUM_FIELD(JoinType, jointype, jointype, jointype);
1519
+ READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
1520
+ READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
1521
+ READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
1522
+ READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
1523
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
1524
+ READ_LIST_FIELD(functions, functions, functions);
1525
+ READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
1526
+ READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
1527
+ READ_LIST_FIELD(values_lists, values_lists, values_lists);
1528
+ READ_STRING_FIELD(ctename, ctename, ctename);
1529
+ READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
1530
+ READ_BOOL_FIELD(self_reference, self_reference, self_reference);
1531
+ READ_LIST_FIELD(coltypes, coltypes, coltypes);
1532
+ READ_LIST_FIELD(coltypmods, coltypmods, coltypmods);
1533
+ READ_LIST_FIELD(colcollations, colcollations, colcollations);
1534
+ READ_STRING_FIELD(enrname, enrname, enrname);
1535
+ READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
1536
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1537
+ READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
1538
+ READ_LIST_FIELD(security_quals, securityQuals, securityQuals);
1360
1539
  return node;
1361
1540
  }
1362
1541
 
1363
- static DropdbStmt *
1364
- _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg)
1542
+ static RTEPermissionInfo *
1543
+ _readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg)
1365
1544
  {
1366
- DropdbStmt *node = makeNode(DropdbStmt);
1367
- READ_STRING_FIELD(dbname, dbname, dbname);
1368
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1369
- READ_LIST_FIELD(options, options, options);
1545
+ RTEPermissionInfo *node = makeNode(RTEPermissionInfo);
1546
+ READ_UINT_FIELD(relid, relid, relid);
1547
+ READ_BOOL_FIELD(inh, inh, inh);
1548
+ READ_UINT64_FIELD(required_perms, requiredPerms, requiredPerms);
1549
+ READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
1550
+ READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
1551
+ READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
1552
+ READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
1370
1553
  return node;
1371
1554
  }
1372
1555
 
1373
- static VacuumStmt *
1374
- _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg)
1556
+ static RangeTblFunction *
1557
+ _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg)
1375
1558
  {
1376
- VacuumStmt *node = makeNode(VacuumStmt);
1377
- READ_LIST_FIELD(options, options, options);
1378
- READ_LIST_FIELD(rels, rels, rels);
1379
- READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
1559
+ RangeTblFunction *node = makeNode(RangeTblFunction);
1560
+ READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
1561
+ READ_INT_FIELD(funccolcount, funccolcount, funccolcount);
1562
+ READ_LIST_FIELD(funccolnames, funccolnames, funccolnames);
1563
+ READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
1564
+ READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
1565
+ READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
1566
+ READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
1380
1567
  return node;
1381
1568
  }
1382
1569
 
1383
- static ExplainStmt *
1384
- _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg)
1570
+ static TableSampleClause *
1571
+ _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg)
1385
1572
  {
1386
- ExplainStmt *node = makeNode(ExplainStmt);
1387
- READ_NODE_PTR_FIELD(query, query, query);
1388
- READ_LIST_FIELD(options, options, options);
1573
+ TableSampleClause *node = makeNode(TableSampleClause);
1574
+ READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
1575
+ READ_LIST_FIELD(args, args, args);
1576
+ READ_ABSTRACT_PTR_FIELD(repeatable, repeatable, repeatable, Expr*);
1389
1577
  return node;
1390
1578
  }
1391
1579
 
1392
- static CreateTableAsStmt *
1393
- _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg)
1580
+ static WithCheckOption *
1581
+ _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg)
1394
1582
  {
1395
- CreateTableAsStmt *node = makeNode(CreateTableAsStmt);
1396
- READ_NODE_PTR_FIELD(query, query, query);
1397
- READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
1398
- READ_ENUM_FIELD(ObjectType, relkind, relkind, relkind);
1399
- READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
1400
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1583
+ WithCheckOption *node = makeNode(WithCheckOption);
1584
+ READ_ENUM_FIELD(WCOKind, kind, kind, kind);
1585
+ READ_STRING_FIELD(relname, relname, relname);
1586
+ READ_STRING_FIELD(polname, polname, polname);
1587
+ READ_NODE_PTR_FIELD(qual, qual, qual);
1588
+ READ_BOOL_FIELD(cascaded, cascaded, cascaded);
1401
1589
  return node;
1402
1590
  }
1403
1591
 
1404
- static CreateSeqStmt *
1405
- _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg)
1592
+ static SortGroupClause *
1593
+ _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg)
1406
1594
  {
1407
- CreateSeqStmt *node = makeNode(CreateSeqStmt);
1408
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1409
- READ_LIST_FIELD(options, options, options);
1410
- READ_UINT_FIELD(owner_id, ownerId, ownerId);
1411
- READ_BOOL_FIELD(for_identity, for_identity, for_identity);
1412
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1595
+ SortGroupClause *node = makeNode(SortGroupClause);
1596
+ READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
1597
+ READ_UINT_FIELD(eqop, eqop, eqop);
1598
+ READ_UINT_FIELD(sortop, sortop, sortop);
1599
+ READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
1600
+ READ_BOOL_FIELD(hashable, hashable, hashable);
1413
1601
  return node;
1414
1602
  }
1415
1603
 
1416
- static AlterSeqStmt *
1417
- _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg)
1604
+ static GroupingSet *
1605
+ _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg)
1418
1606
  {
1419
- AlterSeqStmt *node = makeNode(AlterSeqStmt);
1420
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1421
- READ_LIST_FIELD(options, options, options);
1422
- READ_BOOL_FIELD(for_identity, for_identity, for_identity);
1423
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1607
+ GroupingSet *node = makeNode(GroupingSet);
1608
+ READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
1609
+ READ_LIST_FIELD(content, content, content);
1610
+ READ_INT_FIELD(location, location, location);
1424
1611
  return node;
1425
1612
  }
1426
1613
 
1427
- static VariableSetStmt *
1428
- _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg)
1614
+ static WindowClause *
1615
+ _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg)
1429
1616
  {
1430
- VariableSetStmt *node = makeNode(VariableSetStmt);
1431
- READ_ENUM_FIELD(VariableSetKind, kind, kind, kind);
1617
+ WindowClause *node = makeNode(WindowClause);
1432
1618
  READ_STRING_FIELD(name, name, name);
1433
- READ_LIST_FIELD(args, args, args);
1434
- READ_BOOL_FIELD(is_local, is_local, is_local);
1619
+ READ_STRING_FIELD(refname, refname, refname);
1620
+ READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1621
+ READ_LIST_FIELD(order_clause, orderClause, orderClause);
1622
+ READ_INT_FIELD(frame_options, frameOptions, frameOptions);
1623
+ READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1624
+ READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1625
+ READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
1626
+ READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
1627
+ READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
1628
+ READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
1629
+ READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
1630
+ READ_UINT_FIELD(winref, winref, winref);
1631
+ READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
1435
1632
  return node;
1436
1633
  }
1437
1634
 
1438
- static VariableShowStmt *
1439
- _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg)
1635
+ static RowMarkClause *
1636
+ _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg)
1440
1637
  {
1441
- VariableShowStmt *node = makeNode(VariableShowStmt);
1442
- READ_STRING_FIELD(name, name, name);
1638
+ RowMarkClause *node = makeNode(RowMarkClause);
1639
+ READ_UINT_FIELD(rti, rti, rti);
1640
+ READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1641
+ READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1642
+ READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
1443
1643
  return node;
1444
1644
  }
1445
1645
 
1446
- static DiscardStmt *
1447
- _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg)
1646
+ static WithClause *
1647
+ _readWithClause(OUT_TYPE(WithClause, WithClause) msg)
1448
1648
  {
1449
- DiscardStmt *node = makeNode(DiscardStmt);
1450
- READ_ENUM_FIELD(DiscardMode, target, target, target);
1649
+ WithClause *node = makeNode(WithClause);
1650
+ READ_LIST_FIELD(ctes, ctes, ctes);
1651
+ READ_BOOL_FIELD(recursive, recursive, recursive);
1652
+ READ_INT_FIELD(location, location, location);
1451
1653
  return node;
1452
1654
  }
1453
1655
 
1454
- static CreateTrigStmt *
1455
- _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg)
1656
+ static InferClause *
1657
+ _readInferClause(OUT_TYPE(InferClause, InferClause) msg)
1456
1658
  {
1457
- CreateTrigStmt *node = makeNode(CreateTrigStmt);
1458
- READ_STRING_FIELD(trigname, trigname, trigname);
1459
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1460
- READ_LIST_FIELD(funcname, funcname, funcname);
1461
- READ_LIST_FIELD(args, args, args);
1462
- READ_BOOL_FIELD(row, row, row);
1463
- READ_INT_FIELD(timing, timing, timing);
1464
- READ_INT_FIELD(events, events, events);
1465
- READ_LIST_FIELD(columns, columns, columns);
1466
- READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
1467
- READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1468
- READ_LIST_FIELD(transition_rels, transitionRels, transitionRels);
1469
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
1470
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1471
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
1659
+ InferClause *node = makeNode(InferClause);
1660
+ READ_LIST_FIELD(index_elems, indexElems, indexElems);
1661
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1662
+ READ_STRING_FIELD(conname, conname, conname);
1663
+ READ_INT_FIELD(location, location, location);
1472
1664
  return node;
1473
1665
  }
1474
1666
 
1475
- static CreatePLangStmt *
1476
- _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg)
1667
+ static OnConflictClause *
1668
+ _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg)
1477
1669
  {
1478
- CreatePLangStmt *node = makeNode(CreatePLangStmt);
1479
- READ_BOOL_FIELD(replace, replace, replace);
1480
- READ_STRING_FIELD(plname, plname, plname);
1481
- READ_LIST_FIELD(plhandler, plhandler, plhandler);
1482
- READ_LIST_FIELD(plinline, plinline, plinline);
1483
- READ_LIST_FIELD(plvalidator, plvalidator, plvalidator);
1484
- READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
1670
+ OnConflictClause *node = makeNode(OnConflictClause);
1671
+ READ_ENUM_FIELD(OnConflictAction, action, action, action);
1672
+ READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
1673
+ READ_LIST_FIELD(target_list, targetList, targetList);
1674
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1675
+ READ_INT_FIELD(location, location, location);
1485
1676
  return node;
1486
1677
  }
1487
1678
 
1488
- static CreateRoleStmt *
1489
- _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg)
1679
+ static CTESearchClause *
1680
+ _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg)
1490
1681
  {
1491
- CreateRoleStmt *node = makeNode(CreateRoleStmt);
1492
- READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
1493
- READ_STRING_FIELD(role, role, role);
1494
- READ_LIST_FIELD(options, options, options);
1682
+ CTESearchClause *node = makeNode(CTESearchClause);
1683
+ READ_LIST_FIELD(search_col_list, search_col_list, search_col_list);
1684
+ READ_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first);
1685
+ READ_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column);
1686
+ READ_INT_FIELD(location, location, location);
1495
1687
  return node;
1496
1688
  }
1497
1689
 
1498
- static AlterRoleStmt *
1499
- _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg)
1690
+ static CTECycleClause *
1691
+ _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg)
1500
1692
  {
1501
- AlterRoleStmt *node = makeNode(AlterRoleStmt);
1502
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1503
- READ_LIST_FIELD(options, options, options);
1504
- READ_INT_FIELD(action, action, action);
1693
+ CTECycleClause *node = makeNode(CTECycleClause);
1694
+ READ_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list);
1695
+ READ_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column);
1696
+ READ_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value);
1697
+ READ_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default);
1698
+ READ_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column);
1699
+ READ_INT_FIELD(location, location, location);
1700
+ READ_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type);
1701
+ READ_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod);
1702
+ READ_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation);
1703
+ READ_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop);
1505
1704
  return node;
1506
1705
  }
1507
1706
 
1508
- static DropRoleStmt *
1509
- _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg)
1707
+ static CommonTableExpr *
1708
+ _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg)
1510
1709
  {
1511
- DropRoleStmt *node = makeNode(DropRoleStmt);
1512
- READ_LIST_FIELD(roles, roles, roles);
1513
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1710
+ CommonTableExpr *node = makeNode(CommonTableExpr);
1711
+ READ_STRING_FIELD(ctename, ctename, ctename);
1712
+ READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
1713
+ READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
1714
+ READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
1715
+ READ_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause);
1716
+ READ_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause);
1717
+ READ_INT_FIELD(location, location, location);
1718
+ READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
1719
+ READ_INT_FIELD(cterefcount, cterefcount, cterefcount);
1720
+ READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
1721
+ READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
1722
+ READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
1723
+ READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
1514
1724
  return node;
1515
1725
  }
1516
1726
 
1517
- static LockStmt *
1518
- _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg)
1727
+ static MergeWhenClause *
1728
+ _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg)
1519
1729
  {
1520
- LockStmt *node = makeNode(LockStmt);
1521
- READ_LIST_FIELD(relations, relations, relations);
1522
- READ_INT_FIELD(mode, mode, mode);
1523
- READ_BOOL_FIELD(nowait, nowait, nowait);
1730
+ MergeWhenClause *node = makeNode(MergeWhenClause);
1731
+ READ_ENUM_FIELD(MergeMatchKind, match_kind, matchKind, matchKind);
1732
+ READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
1733
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
1734
+ READ_NODE_PTR_FIELD(condition, condition, condition);
1735
+ READ_LIST_FIELD(target_list, targetList, targetList);
1736
+ READ_LIST_FIELD(values, values, values);
1524
1737
  return node;
1525
1738
  }
1526
1739
 
1527
- static ConstraintsSetStmt *
1528
- _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg)
1740
+ static TriggerTransition *
1741
+ _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg)
1529
1742
  {
1530
- ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt);
1531
- READ_LIST_FIELD(constraints, constraints, constraints);
1532
- READ_BOOL_FIELD(deferred, deferred, deferred);
1743
+ TriggerTransition *node = makeNode(TriggerTransition);
1744
+ READ_STRING_FIELD(name, name, name);
1745
+ READ_BOOL_FIELD(is_new, isNew, isNew);
1746
+ READ_BOOL_FIELD(is_table, isTable, isTable);
1533
1747
  return node;
1534
1748
  }
1535
1749
 
1536
- static ReindexStmt *
1537
- _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg)
1750
+ static JsonOutput *
1751
+ _readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg)
1538
1752
  {
1539
- ReindexStmt *node = makeNode(ReindexStmt);
1540
- READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
1541
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1542
- READ_STRING_FIELD(name, name, name);
1543
- READ_INT_FIELD(options, options, options);
1544
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1753
+ JsonOutput *node = makeNode(JsonOutput);
1754
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1755
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
1545
1756
  return node;
1546
1757
  }
1547
1758
 
1548
- static CheckPointStmt *
1549
- _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg)
1759
+ static JsonArgument *
1760
+ _readJsonArgument(OUT_TYPE(JsonArgument, JsonArgument) msg)
1550
1761
  {
1551
- CheckPointStmt *node = makeNode(CheckPointStmt);
1762
+ JsonArgument *node = makeNode(JsonArgument);
1763
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, val, val, val);
1764
+ READ_STRING_FIELD(name, name, name);
1552
1765
  return node;
1553
1766
  }
1554
1767
 
1555
- static CreateSchemaStmt *
1556
- _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg)
1768
+ static JsonFuncExpr *
1769
+ _readJsonFuncExpr(OUT_TYPE(JsonFuncExpr, JsonFuncExpr) msg)
1557
1770
  {
1558
- CreateSchemaStmt *node = makeNode(CreateSchemaStmt);
1559
- READ_STRING_FIELD(schemaname, schemaname, schemaname);
1560
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole);
1561
- READ_LIST_FIELD(schema_elts, schemaElts, schemaElts);
1562
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1771
+ JsonFuncExpr *node = makeNode(JsonFuncExpr);
1772
+ READ_ENUM_FIELD(JsonExprOp, op, op, op);
1773
+ READ_STRING_FIELD(column_name, column_name, column_name);
1774
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, context_item, context_item, context_item);
1775
+ READ_NODE_PTR_FIELD(pathspec, pathspec, pathspec);
1776
+ READ_LIST_FIELD(passing, passing, passing);
1777
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1778
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
1779
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1780
+ READ_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
1781
+ READ_ENUM_FIELD(JsonQuotes, quotes, quotes, quotes);
1782
+ READ_INT_FIELD(location, location, location);
1563
1783
  return node;
1564
1784
  }
1565
1785
 
1566
- static AlterDatabaseStmt *
1567
- _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg)
1786
+ static JsonTablePathSpec *
1787
+ _readJsonTablePathSpec(OUT_TYPE(JsonTablePathSpec, JsonTablePathSpec) msg)
1568
1788
  {
1569
- AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt);
1570
- READ_STRING_FIELD(dbname, dbname, dbname);
1571
- READ_LIST_FIELD(options, options, options);
1789
+ JsonTablePathSpec *node = makeNode(JsonTablePathSpec);
1790
+ READ_NODE_PTR_FIELD(string, string, string);
1791
+ READ_STRING_FIELD(name, name, name);
1792
+ READ_INT_FIELD(name_location, name_location, name_location);
1793
+ READ_INT_FIELD(location, location, location);
1572
1794
  return node;
1573
1795
  }
1574
1796
 
1575
- static AlterDatabaseSetStmt *
1576
- _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg)
1797
+ static JsonTable *
1798
+ _readJsonTable(OUT_TYPE(JsonTable, JsonTable) msg)
1577
1799
  {
1578
- AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt);
1579
- READ_STRING_FIELD(dbname, dbname, dbname);
1580
- READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1800
+ JsonTable *node = makeNode(JsonTable);
1801
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, context_item, context_item, context_item);
1802
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonTablePathSpec, json_table_path_spec, pathspec, pathspec, pathspec);
1803
+ READ_LIST_FIELD(passing, passing, passing);
1804
+ READ_LIST_FIELD(columns, columns, columns);
1805
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1806
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1807
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1808
+ READ_INT_FIELD(location, location, location);
1581
1809
  return node;
1582
1810
  }
1583
1811
 
1584
- static AlterRoleSetStmt *
1585
- _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg)
1812
+ static JsonTableColumn *
1813
+ _readJsonTableColumn(OUT_TYPE(JsonTableColumn, JsonTableColumn) msg)
1586
1814
  {
1587
- AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt);
1588
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1589
- READ_STRING_FIELD(database, database, database);
1590
- READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1815
+ JsonTableColumn *node = makeNode(JsonTableColumn);
1816
+ READ_ENUM_FIELD(JsonTableColumnType, coltype, coltype, coltype);
1817
+ READ_STRING_FIELD(name, name, name);
1818
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1819
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonTablePathSpec, json_table_path_spec, pathspec, pathspec, pathspec);
1820
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
1821
+ READ_ENUM_FIELD(JsonWrapper, wrapper, wrapper, wrapper);
1822
+ READ_ENUM_FIELD(JsonQuotes, quotes, quotes, quotes);
1823
+ READ_LIST_FIELD(columns, columns, columns);
1824
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_empty, on_empty, on_empty);
1825
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonBehavior, json_behavior, on_error, on_error, on_error);
1826
+ READ_INT_FIELD(location, location, location);
1591
1827
  return node;
1592
1828
  }
1593
1829
 
1594
- static CreateConversionStmt *
1595
- _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg)
1830
+ static JsonKeyValue *
1831
+ _readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg)
1596
1832
  {
1597
- CreateConversionStmt *node = makeNode(CreateConversionStmt);
1598
- READ_LIST_FIELD(conversion_name, conversion_name, conversion_name);
1599
- READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
1600
- READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
1601
- READ_LIST_FIELD(func_name, func_name, func_name);
1602
- READ_BOOL_FIELD(def, def, def);
1833
+ JsonKeyValue *node = makeNode(JsonKeyValue);
1834
+ READ_ABSTRACT_PTR_FIELD(key, key, key, Expr*);
1835
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, value, value, value);
1603
1836
  return node;
1604
1837
  }
1605
1838
 
1606
- static CreateCastStmt *
1607
- _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg)
1839
+ static JsonParseExpr *
1840
+ _readJsonParseExpr(OUT_TYPE(JsonParseExpr, JsonParseExpr) msg)
1608
1841
  {
1609
- CreateCastStmt *node = makeNode(CreateCastStmt);
1610
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
1611
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
1612
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1613
- READ_ENUM_FIELD(CoercionContext, context, context, context);
1614
- READ_BOOL_FIELD(inout, inout, inout);
1842
+ JsonParseExpr *node = makeNode(JsonParseExpr);
1843
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, expr, expr, expr);
1844
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1845
+ READ_BOOL_FIELD(unique_keys, unique_keys, unique_keys);
1846
+ READ_INT_FIELD(location, location, location);
1615
1847
  return node;
1616
1848
  }
1617
1849
 
1618
- static CreateOpClassStmt *
1619
- _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg)
1850
+ static JsonScalarExpr *
1851
+ _readJsonScalarExpr(OUT_TYPE(JsonScalarExpr, JsonScalarExpr) msg)
1620
1852
  {
1621
- CreateOpClassStmt *node = makeNode(CreateOpClassStmt);
1622
- READ_LIST_FIELD(opclassname, opclassname, opclassname);
1623
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1624
- READ_STRING_FIELD(amname, amname, amname);
1625
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
1626
- READ_LIST_FIELD(items, items, items);
1627
- READ_BOOL_FIELD(is_default, isDefault, isDefault);
1853
+ JsonScalarExpr *node = makeNode(JsonScalarExpr);
1854
+ READ_ABSTRACT_PTR_FIELD(expr, expr, expr, Expr*);
1855
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1856
+ READ_INT_FIELD(location, location, location);
1628
1857
  return node;
1629
1858
  }
1630
1859
 
1631
- static CreateOpFamilyStmt *
1632
- _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg)
1860
+ static JsonSerializeExpr *
1861
+ _readJsonSerializeExpr(OUT_TYPE(JsonSerializeExpr, JsonSerializeExpr) msg)
1633
1862
  {
1634
- CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt);
1635
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1636
- READ_STRING_FIELD(amname, amname, amname);
1863
+ JsonSerializeExpr *node = makeNode(JsonSerializeExpr);
1864
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, expr, expr, expr);
1865
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1866
+ READ_INT_FIELD(location, location, location);
1637
1867
  return node;
1638
1868
  }
1639
1869
 
1640
- static AlterOpFamilyStmt *
1641
- _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg)
1870
+ static JsonObjectConstructor *
1871
+ _readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg)
1642
1872
  {
1643
- AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt);
1644
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1645
- READ_STRING_FIELD(amname, amname, amname);
1646
- READ_BOOL_FIELD(is_drop, isDrop, isDrop);
1647
- READ_LIST_FIELD(items, items, items);
1873
+ JsonObjectConstructor *node = makeNode(JsonObjectConstructor);
1874
+ READ_LIST_FIELD(exprs, exprs, exprs);
1875
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1876
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1877
+ READ_BOOL_FIELD(unique, unique, unique);
1878
+ READ_INT_FIELD(location, location, location);
1648
1879
  return node;
1649
1880
  }
1650
1881
 
1651
- static PrepareStmt *
1652
- _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg)
1882
+ static JsonArrayConstructor *
1883
+ _readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg)
1653
1884
  {
1654
- PrepareStmt *node = makeNode(PrepareStmt);
1655
- READ_STRING_FIELD(name, name, name);
1656
- READ_LIST_FIELD(argtypes, argtypes, argtypes);
1657
- READ_NODE_PTR_FIELD(query, query, query);
1885
+ JsonArrayConstructor *node = makeNode(JsonArrayConstructor);
1886
+ READ_LIST_FIELD(exprs, exprs, exprs);
1887
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1888
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1889
+ READ_INT_FIELD(location, location, location);
1658
1890
  return node;
1659
1891
  }
1660
1892
 
1661
- static ExecuteStmt *
1662
- _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg)
1893
+ static JsonArrayQueryConstructor *
1894
+ _readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg)
1663
1895
  {
1664
- ExecuteStmt *node = makeNode(ExecuteStmt);
1665
- READ_STRING_FIELD(name, name, name);
1666
- READ_LIST_FIELD(params, params, params);
1896
+ JsonArrayQueryConstructor *node = makeNode(JsonArrayQueryConstructor);
1897
+ READ_NODE_PTR_FIELD(query, query, query);
1898
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1899
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
1900
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1901
+ READ_INT_FIELD(location, location, location);
1667
1902
  return node;
1668
1903
  }
1669
1904
 
1670
- static DeallocateStmt *
1671
- _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg)
1905
+ static JsonAggConstructor *
1906
+ _readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg)
1672
1907
  {
1673
- DeallocateStmt *node = makeNode(DeallocateStmt);
1674
- READ_STRING_FIELD(name, name, name);
1908
+ JsonAggConstructor *node = makeNode(JsonAggConstructor);
1909
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1910
+ READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1911
+ READ_LIST_FIELD(agg_order, agg_order, agg_order);
1912
+ READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1913
+ READ_INT_FIELD(location, location, location);
1675
1914
  return node;
1676
1915
  }
1677
1916
 
1678
- static DeclareCursorStmt *
1679
- _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg)
1917
+ static JsonObjectAgg *
1918
+ _readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg)
1680
1919
  {
1681
- DeclareCursorStmt *node = makeNode(DeclareCursorStmt);
1682
- READ_STRING_FIELD(portalname, portalname, portalname);
1683
- READ_INT_FIELD(options, options, options);
1684
- READ_NODE_PTR_FIELD(query, query, query);
1920
+ JsonObjectAgg *node = makeNode(JsonObjectAgg);
1921
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1922
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonKeyValue, json_key_value, arg, arg, arg);
1923
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1924
+ READ_BOOL_FIELD(unique, unique, unique);
1685
1925
  return node;
1686
1926
  }
1687
1927
 
1688
- static CreateTableSpaceStmt *
1689
- _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg)
1928
+ static JsonArrayAgg *
1929
+ _readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg)
1690
1930
  {
1691
- CreateTableSpaceStmt *node = makeNode(CreateTableSpaceStmt);
1692
- READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1693
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner);
1694
- READ_STRING_FIELD(location, location, location);
1695
- READ_LIST_FIELD(options, options, options);
1931
+ JsonArrayAgg *node = makeNode(JsonArrayAgg);
1932
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1933
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, arg, arg, arg);
1934
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1696
1935
  return node;
1697
1936
  }
1698
1937
 
1699
- static DropTableSpaceStmt *
1700
- _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg)
1938
+ static RawStmt *
1939
+ _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg)
1701
1940
  {
1702
- DropTableSpaceStmt *node = makeNode(DropTableSpaceStmt);
1703
- READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1704
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1941
+ RawStmt *node = makeNode(RawStmt);
1942
+ READ_NODE_PTR_FIELD(stmt, stmt, stmt);
1943
+ READ_INT_FIELD(stmt_location, stmt_location, stmt_location);
1944
+ READ_INT_FIELD(stmt_len, stmt_len, stmt_len);
1705
1945
  return node;
1706
1946
  }
1707
1947
 
1708
- static AlterObjectDependsStmt *
1709
- _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg)
1948
+ static InsertStmt *
1949
+ _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg)
1710
1950
  {
1711
- AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt);
1712
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1951
+ InsertStmt *node = makeNode(InsertStmt);
1713
1952
  READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1714
- READ_NODE_PTR_FIELD(object, object, object);
1715
- READ_VALUE_PTR_FIELD(extname, extname, extname);
1716
- READ_BOOL_FIELD(remove, remove, remove);
1953
+ READ_LIST_FIELD(cols, cols, cols);
1954
+ READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
1955
+ READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
1956
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1957
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1958
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
1717
1959
  return node;
1718
1960
  }
1719
1961
 
1720
- static AlterObjectSchemaStmt *
1721
- _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg)
1962
+ static DeleteStmt *
1963
+ _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg)
1722
1964
  {
1723
- AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt);
1724
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1965
+ DeleteStmt *node = makeNode(DeleteStmt);
1725
1966
  READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1726
- READ_NODE_PTR_FIELD(object, object, object);
1727
- READ_STRING_FIELD(newschema, newschema, newschema);
1728
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1967
+ READ_LIST_FIELD(using_clause, usingClause, usingClause);
1968
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1969
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1970
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1729
1971
  return node;
1730
1972
  }
1731
1973
 
1732
- static AlterOwnerStmt *
1733
- _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg)
1974
+ static UpdateStmt *
1975
+ _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg)
1734
1976
  {
1735
- AlterOwnerStmt *node = makeNode(AlterOwnerStmt);
1736
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1977
+ UpdateStmt *node = makeNode(UpdateStmt);
1737
1978
  READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1738
- READ_NODE_PTR_FIELD(object, object, object);
1739
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1979
+ READ_LIST_FIELD(target_list, targetList, targetList);
1980
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1981
+ READ_LIST_FIELD(from_clause, fromClause, fromClause);
1982
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1983
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1740
1984
  return node;
1741
1985
  }
1742
1986
 
1743
- static AlterOperatorStmt *
1744
- _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg)
1987
+ static MergeStmt *
1988
+ _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg)
1745
1989
  {
1746
- AlterOperatorStmt *node = makeNode(AlterOperatorStmt);
1747
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
1748
- READ_LIST_FIELD(options, options, options);
1990
+ MergeStmt *node = makeNode(MergeStmt);
1991
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1992
+ READ_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation);
1993
+ READ_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition);
1994
+ READ_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses);
1995
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1996
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1749
1997
  return node;
1750
1998
  }
1751
1999
 
1752
- static AlterTypeStmt *
1753
- _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg)
2000
+ static SelectStmt *
2001
+ _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg)
1754
2002
  {
1755
- AlterTypeStmt *node = makeNode(AlterTypeStmt);
1756
- READ_LIST_FIELD(type_name, typeName, typeName);
1757
- READ_LIST_FIELD(options, options, options);
2003
+ SelectStmt *node = makeNode(SelectStmt);
2004
+ READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
2005
+ READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
2006
+ READ_LIST_FIELD(target_list, targetList, targetList);
2007
+ READ_LIST_FIELD(from_clause, fromClause, fromClause);
2008
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2009
+ READ_LIST_FIELD(group_clause, groupClause, groupClause);
2010
+ READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
2011
+ READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
2012
+ READ_LIST_FIELD(window_clause, windowClause, windowClause);
2013
+ READ_LIST_FIELD(values_lists, valuesLists, valuesLists);
2014
+ READ_LIST_FIELD(sort_clause, sortClause, sortClause);
2015
+ READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
2016
+ READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
2017
+ READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
2018
+ READ_LIST_FIELD(locking_clause, lockingClause, lockingClause);
2019
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
2020
+ READ_ENUM_FIELD(SetOperation, op, op, op);
2021
+ READ_BOOL_FIELD(all, all, all);
2022
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
2023
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1758
2024
  return node;
1759
2025
  }
1760
2026
 
1761
- static DropOwnedStmt *
1762
- _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg)
2027
+ static SetOperationStmt *
2028
+ _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg)
1763
2029
  {
1764
- DropOwnedStmt *node = makeNode(DropOwnedStmt);
1765
- READ_LIST_FIELD(roles, roles, roles);
1766
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2030
+ SetOperationStmt *node = makeNode(SetOperationStmt);
2031
+ READ_ENUM_FIELD(SetOperation, op, op, op);
2032
+ READ_BOOL_FIELD(all, all, all);
2033
+ READ_NODE_PTR_FIELD(larg, larg, larg);
2034
+ READ_NODE_PTR_FIELD(rarg, rarg, rarg);
2035
+ READ_LIST_FIELD(col_types, colTypes, colTypes);
2036
+ READ_LIST_FIELD(col_typmods, colTypmods, colTypmods);
2037
+ READ_LIST_FIELD(col_collations, colCollations, colCollations);
2038
+ READ_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1767
2039
  return node;
1768
2040
  }
1769
2041
 
1770
- static ReassignOwnedStmt *
1771
- _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg)
2042
+ static ReturnStmt *
2043
+ _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg)
1772
2044
  {
1773
- ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt);
1774
- READ_LIST_FIELD(roles, roles, roles);
1775
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
2045
+ ReturnStmt *node = makeNode(ReturnStmt);
2046
+ READ_NODE_PTR_FIELD(returnval, returnval, returnval);
1776
2047
  return node;
1777
2048
  }
1778
2049
 
1779
- static CompositeTypeStmt *
1780
- _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg)
2050
+ static PLAssignStmt *
2051
+ _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg)
1781
2052
  {
1782
- CompositeTypeStmt *node = makeNode(CompositeTypeStmt);
1783
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
1784
- READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2053
+ PLAssignStmt *node = makeNode(PLAssignStmt);
2054
+ READ_STRING_FIELD(name, name, name);
2055
+ READ_LIST_FIELD(indirection, indirection, indirection);
2056
+ READ_INT_FIELD(nnames, nnames, nnames);
2057
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val);
2058
+ READ_INT_FIELD(location, location, location);
1785
2059
  return node;
1786
2060
  }
1787
2061
 
1788
- static CreateEnumStmt *
1789
- _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg)
2062
+ static CreateSchemaStmt *
2063
+ _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg)
1790
2064
  {
1791
- CreateEnumStmt *node = makeNode(CreateEnumStmt);
1792
- READ_LIST_FIELD(type_name, typeName, typeName);
1793
- READ_LIST_FIELD(vals, vals, vals);
2065
+ CreateSchemaStmt *node = makeNode(CreateSchemaStmt);
2066
+ READ_STRING_FIELD(schemaname, schemaname, schemaname);
2067
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, authrole, authrole, authrole);
2068
+ READ_LIST_FIELD(schema_elts, schemaElts, schemaElts);
2069
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1794
2070
  return node;
1795
2071
  }
1796
2072
 
1797
- static CreateRangeStmt *
1798
- _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg)
2073
+ static AlterTableStmt *
2074
+ _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg)
1799
2075
  {
1800
- CreateRangeStmt *node = makeNode(CreateRangeStmt);
1801
- READ_LIST_FIELD(type_name, typeName, typeName);
1802
- READ_LIST_FIELD(params, params, params);
2076
+ AlterTableStmt *node = makeNode(AlterTableStmt);
2077
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2078
+ READ_LIST_FIELD(cmds, cmds, cmds);
2079
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2080
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1803
2081
  return node;
1804
2082
  }
1805
2083
 
1806
- static AlterEnumStmt *
1807
- _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg)
2084
+ static ReplicaIdentityStmt *
2085
+ _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg)
1808
2086
  {
1809
- AlterEnumStmt *node = makeNode(AlterEnumStmt);
1810
- READ_LIST_FIELD(type_name, typeName, typeName);
1811
- READ_STRING_FIELD(old_val, oldVal, oldVal);
1812
- READ_STRING_FIELD(new_val, newVal, newVal);
1813
- READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
1814
- READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
1815
- READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2087
+ ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt);
2088
+ READ_CHAR_FIELD(identity_type, identity_type, identity_type);
2089
+ READ_STRING_FIELD(name, name, name);
1816
2090
  return node;
1817
2091
  }
1818
2092
 
1819
- static AlterTSDictionaryStmt *
1820
- _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg)
2093
+ static AlterTableCmd *
2094
+ _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg)
1821
2095
  {
1822
- AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt);
1823
- READ_LIST_FIELD(dictname, dictname, dictname);
1824
- READ_LIST_FIELD(options, options, options);
2096
+ AlterTableCmd *node = makeNode(AlterTableCmd);
2097
+ READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
2098
+ READ_STRING_FIELD(name, name, name);
2099
+ READ_INT_FIELD(num, num, num);
2100
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
2101
+ READ_NODE_PTR_FIELD(def, def, def);
2102
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2103
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2104
+ READ_BOOL_FIELD(recurse, recurse, recurse);
1825
2105
  return node;
1826
2106
  }
1827
2107
 
1828
- static AlterTSConfigurationStmt *
1829
- _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg)
2108
+ static AlterCollationStmt *
2109
+ _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg)
1830
2110
  {
1831
- AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt);
1832
- READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
1833
- READ_LIST_FIELD(cfgname, cfgname, cfgname);
1834
- READ_LIST_FIELD(tokentype, tokentype, tokentype);
1835
- READ_LIST_FIELD(dicts, dicts, dicts);
1836
- READ_BOOL_FIELD(override, override, override);
1837
- READ_BOOL_FIELD(replace, replace, replace);
1838
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2111
+ AlterCollationStmt *node = makeNode(AlterCollationStmt);
2112
+ READ_LIST_FIELD(collname, collname, collname);
1839
2113
  return node;
1840
2114
  }
1841
2115
 
1842
- static CreateFdwStmt *
1843
- _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg)
2116
+ static AlterDomainStmt *
2117
+ _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg)
1844
2118
  {
1845
- CreateFdwStmt *node = makeNode(CreateFdwStmt);
1846
- READ_STRING_FIELD(fdwname, fdwname, fdwname);
1847
- READ_LIST_FIELD(func_options, func_options, func_options);
1848
- READ_LIST_FIELD(options, options, options);
2119
+ AlterDomainStmt *node = makeNode(AlterDomainStmt);
2120
+ READ_CHAR_FIELD(subtype, subtype, subtype);
2121
+ READ_LIST_FIELD(type_name, typeName, typeName);
2122
+ READ_STRING_FIELD(name, name, name);
2123
+ READ_NODE_PTR_FIELD(def, def, def);
2124
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2125
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1849
2126
  return node;
1850
2127
  }
1851
2128
 
1852
- static AlterFdwStmt *
1853
- _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg)
2129
+ static GrantStmt *
2130
+ _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg)
1854
2131
  {
1855
- AlterFdwStmt *node = makeNode(AlterFdwStmt);
1856
- READ_STRING_FIELD(fdwname, fdwname, fdwname);
1857
- READ_LIST_FIELD(func_options, func_options, func_options);
1858
- READ_LIST_FIELD(options, options, options);
2132
+ GrantStmt *node = makeNode(GrantStmt);
2133
+ READ_BOOL_FIELD(is_grant, is_grant, is_grant);
2134
+ READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
2135
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2136
+ READ_LIST_FIELD(objects, objects, objects);
2137
+ READ_LIST_FIELD(privileges, privileges, privileges);
2138
+ READ_LIST_FIELD(grantees, grantees, grantees);
2139
+ READ_BOOL_FIELD(grant_option, grant_option, grant_option);
2140
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
2141
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1859
2142
  return node;
1860
2143
  }
1861
2144
 
1862
- static CreateForeignServerStmt *
1863
- _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg)
2145
+ static ObjectWithArgs *
2146
+ _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg)
1864
2147
  {
1865
- CreateForeignServerStmt *node = makeNode(CreateForeignServerStmt);
1866
- READ_STRING_FIELD(servername, servername, servername);
1867
- READ_STRING_FIELD(servertype, servertype, servertype);
1868
- READ_STRING_FIELD(version, version, version);
1869
- READ_STRING_FIELD(fdwname, fdwname, fdwname);
1870
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1871
- READ_LIST_FIELD(options, options, options);
2148
+ ObjectWithArgs *node = makeNode(ObjectWithArgs);
2149
+ READ_LIST_FIELD(objname, objname, objname);
2150
+ READ_LIST_FIELD(objargs, objargs, objargs);
2151
+ READ_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs);
2152
+ READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
1872
2153
  return node;
1873
2154
  }
1874
2155
 
1875
- static AlterForeignServerStmt *
1876
- _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg)
2156
+ static AccessPriv *
2157
+ _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg)
1877
2158
  {
1878
- AlterForeignServerStmt *node = makeNode(AlterForeignServerStmt);
1879
- READ_STRING_FIELD(servername, servername, servername);
1880
- READ_STRING_FIELD(version, version, version);
1881
- READ_LIST_FIELD(options, options, options);
1882
- READ_BOOL_FIELD(has_version, has_version, has_version);
2159
+ AccessPriv *node = makeNode(AccessPriv);
2160
+ READ_STRING_FIELD(priv_name, priv_name, priv_name);
2161
+ READ_LIST_FIELD(cols, cols, cols);
1883
2162
  return node;
1884
2163
  }
1885
2164
 
1886
- static CreateUserMappingStmt *
1887
- _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg)
2165
+ static GrantRoleStmt *
2166
+ _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg)
1888
2167
  {
1889
- CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt);
1890
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
1891
- READ_STRING_FIELD(servername, servername, servername);
1892
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1893
- READ_LIST_FIELD(options, options, options);
2168
+ GrantRoleStmt *node = makeNode(GrantRoleStmt);
2169
+ READ_LIST_FIELD(granted_roles, granted_roles, granted_roles);
2170
+ READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
2171
+ READ_BOOL_FIELD(is_grant, is_grant, is_grant);
2172
+ READ_LIST_FIELD(opt, opt, opt);
2173
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
2174
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1894
2175
  return node;
1895
2176
  }
1896
2177
 
1897
- static AlterUserMappingStmt *
1898
- _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg)
2178
+ static AlterDefaultPrivilegesStmt *
2179
+ _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg)
1899
2180
  {
1900
- AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt);
1901
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
1902
- READ_STRING_FIELD(servername, servername, servername);
2181
+ AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt);
1903
2182
  READ_LIST_FIELD(options, options, options);
2183
+ READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1904
2184
  return node;
1905
2185
  }
1906
2186
 
1907
- static DropUserMappingStmt *
1908
- _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg)
2187
+ static CopyStmt *
2188
+ _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg)
1909
2189
  {
1910
- DropUserMappingStmt *node = makeNode(DropUserMappingStmt);
1911
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
1912
- READ_STRING_FIELD(servername, servername, servername);
1913
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2190
+ CopyStmt *node = makeNode(CopyStmt);
2191
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2192
+ READ_NODE_PTR_FIELD(query, query, query);
2193
+ READ_LIST_FIELD(attlist, attlist, attlist);
2194
+ READ_BOOL_FIELD(is_from, is_from, is_from);
2195
+ READ_BOOL_FIELD(is_program, is_program, is_program);
2196
+ READ_STRING_FIELD(filename, filename, filename);
2197
+ READ_LIST_FIELD(options, options, options);
2198
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1914
2199
  return node;
1915
2200
  }
1916
2201
 
1917
- static AlterTableSpaceOptionsStmt *
1918
- _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg)
2202
+ static VariableSetStmt *
2203
+ _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg)
1919
2204
  {
1920
- AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt);
2205
+ VariableSetStmt *node = makeNode(VariableSetStmt);
2206
+ READ_ENUM_FIELD(VariableSetKind, kind, kind, kind);
2207
+ READ_STRING_FIELD(name, name, name);
2208
+ READ_LIST_FIELD(args, args, args);
2209
+ READ_BOOL_FIELD(is_local, is_local, is_local);
2210
+ return node;
2211
+ }
2212
+
2213
+ static VariableShowStmt *
2214
+ _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg)
2215
+ {
2216
+ VariableShowStmt *node = makeNode(VariableShowStmt);
2217
+ READ_STRING_FIELD(name, name, name);
2218
+ return node;
2219
+ }
2220
+
2221
+ static CreateStmt *
2222
+ _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg)
2223
+ {
2224
+ CreateStmt *node = makeNode(CreateStmt);
2225
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2226
+ READ_LIST_FIELD(table_elts, tableElts, tableElts);
2227
+ READ_LIST_FIELD(inh_relations, inhRelations, inhRelations);
2228
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
2229
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
2230
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
2231
+ READ_LIST_FIELD(constraints, constraints, constraints);
2232
+ READ_LIST_FIELD(options, options, options);
2233
+ READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
1921
2234
  READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
2235
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
2236
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2237
+ return node;
2238
+ }
2239
+
2240
+ static Constraint *
2241
+ _readConstraint(OUT_TYPE(Constraint, Constraint) msg)
2242
+ {
2243
+ Constraint *node = makeNode(Constraint);
2244
+ READ_ENUM_FIELD(ConstrType, contype, contype, contype);
2245
+ READ_STRING_FIELD(conname, conname, conname);
2246
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2247
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2248
+ READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
2249
+ READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
2250
+ READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
2251
+ READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
2252
+ READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
2253
+ READ_CHAR_FIELD(generated_when, generated_when, generated_when);
2254
+ READ_INT_FIELD(inhcount, inhcount, inhcount);
2255
+ READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2256
+ READ_LIST_FIELD(keys, keys, keys);
2257
+ READ_LIST_FIELD(including, including, including);
2258
+ READ_LIST_FIELD(exclusions, exclusions, exclusions);
1922
2259
  READ_LIST_FIELD(options, options, options);
1923
- READ_BOOL_FIELD(is_reset, isReset, isReset);
2260
+ READ_STRING_FIELD(indexname, indexname, indexname);
2261
+ READ_STRING_FIELD(indexspace, indexspace, indexspace);
2262
+ READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2263
+ READ_STRING_FIELD(access_method, access_method, access_method);
2264
+ READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
2265
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
2266
+ READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
2267
+ READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
2268
+ READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
2269
+ READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
2270
+ READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
2271
+ READ_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols);
2272
+ READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
2273
+ READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
2274
+ READ_INT_FIELD(location, location, location);
1924
2275
  return node;
1925
2276
  }
1926
2277
 
1927
- static AlterTableMoveAllStmt *
1928
- _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg)
2278
+ static CreateTableSpaceStmt *
2279
+ _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg)
1929
2280
  {
1930
- AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt);
1931
- READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
1932
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1933
- READ_LIST_FIELD(roles, roles, roles);
1934
- READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
1935
- READ_BOOL_FIELD(nowait, nowait, nowait);
2281
+ CreateTableSpaceStmt *node = makeNode(CreateTableSpaceStmt);
2282
+ READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
2283
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, owner, owner, owner);
2284
+ READ_STRING_FIELD(location, location, location);
2285
+ READ_LIST_FIELD(options, options, options);
1936
2286
  return node;
1937
2287
  }
1938
2288
 
1939
- static SecLabelStmt *
1940
- _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg)
2289
+ static DropTableSpaceStmt *
2290
+ _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg)
1941
2291
  {
1942
- SecLabelStmt *node = makeNode(SecLabelStmt);
1943
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1944
- READ_NODE_PTR_FIELD(object, object, object);
1945
- READ_STRING_FIELD(provider, provider, provider);
1946
- READ_STRING_FIELD(label, label, label);
2292
+ DropTableSpaceStmt *node = makeNode(DropTableSpaceStmt);
2293
+ READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
2294
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1947
2295
  return node;
1948
2296
  }
1949
2297
 
1950
- static CreateForeignTableStmt *
1951
- _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg)
2298
+ static AlterTableSpaceOptionsStmt *
2299
+ _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg)
1952
2300
  {
1953
- CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt);
1954
- READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
1955
- READ_STRING_FIELD(servername, servername, servername);
2301
+ AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt);
2302
+ READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1956
2303
  READ_LIST_FIELD(options, options, options);
1957
- NodeSetTag(node, T_CreateForeignTableStmt);
2304
+ READ_BOOL_FIELD(is_reset, isReset, isReset);
1958
2305
  return node;
1959
2306
  }
1960
2307
 
1961
- static ImportForeignSchemaStmt *
1962
- _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg)
2308
+ static AlterTableMoveAllStmt *
2309
+ _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg)
1963
2310
  {
1964
- ImportForeignSchemaStmt *node = makeNode(ImportForeignSchemaStmt);
1965
- READ_STRING_FIELD(server_name, server_name, server_name);
1966
- READ_STRING_FIELD(remote_schema, remote_schema, remote_schema);
1967
- READ_STRING_FIELD(local_schema, local_schema, local_schema);
1968
- READ_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type);
1969
- READ_LIST_FIELD(table_list, table_list, table_list);
1970
- READ_LIST_FIELD(options, options, options);
2311
+ AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt);
2312
+ READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
2313
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2314
+ READ_LIST_FIELD(roles, roles, roles);
2315
+ READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
2316
+ READ_BOOL_FIELD(nowait, nowait, nowait);
1971
2317
  return node;
1972
2318
  }
1973
2319
 
@@ -2001,50 +2347,102 @@ _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtens
2001
2347
  return node;
2002
2348
  }
2003
2349
 
2004
- static CreateEventTrigStmt *
2005
- _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg)
2350
+ static CreateFdwStmt *
2351
+ _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg)
2006
2352
  {
2007
- CreateEventTrigStmt *node = makeNode(CreateEventTrigStmt);
2008
- READ_STRING_FIELD(trigname, trigname, trigname);
2009
- READ_STRING_FIELD(eventname, eventname, eventname);
2010
- READ_LIST_FIELD(whenclause, whenclause, whenclause);
2011
- READ_LIST_FIELD(funcname, funcname, funcname);
2353
+ CreateFdwStmt *node = makeNode(CreateFdwStmt);
2354
+ READ_STRING_FIELD(fdwname, fdwname, fdwname);
2355
+ READ_LIST_FIELD(func_options, func_options, func_options);
2356
+ READ_LIST_FIELD(options, options, options);
2012
2357
  return node;
2013
2358
  }
2014
2359
 
2015
- static AlterEventTrigStmt *
2016
- _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg)
2360
+ static AlterFdwStmt *
2361
+ _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg)
2017
2362
  {
2018
- AlterEventTrigStmt *node = makeNode(AlterEventTrigStmt);
2019
- READ_STRING_FIELD(trigname, trigname, trigname);
2020
- READ_CHAR_FIELD(tgenabled, tgenabled, tgenabled);
2363
+ AlterFdwStmt *node = makeNode(AlterFdwStmt);
2364
+ READ_STRING_FIELD(fdwname, fdwname, fdwname);
2365
+ READ_LIST_FIELD(func_options, func_options, func_options);
2366
+ READ_LIST_FIELD(options, options, options);
2021
2367
  return node;
2022
2368
  }
2023
2369
 
2024
- static RefreshMatViewStmt *
2025
- _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg)
2370
+ static CreateForeignServerStmt *
2371
+ _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg)
2026
2372
  {
2027
- RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt);
2028
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2029
- READ_BOOL_FIELD(skip_data, skipData, skipData);
2030
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2373
+ CreateForeignServerStmt *node = makeNode(CreateForeignServerStmt);
2374
+ READ_STRING_FIELD(servername, servername, servername);
2375
+ READ_STRING_FIELD(servertype, servertype, servertype);
2376
+ READ_STRING_FIELD(version, version, version);
2377
+ READ_STRING_FIELD(fdwname, fdwname, fdwname);
2378
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2379
+ READ_LIST_FIELD(options, options, options);
2031
2380
  return node;
2032
2381
  }
2033
2382
 
2034
- static ReplicaIdentityStmt *
2035
- _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg)
2383
+ static AlterForeignServerStmt *
2384
+ _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg)
2036
2385
  {
2037
- ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt);
2038
- READ_CHAR_FIELD(identity_type, identity_type, identity_type);
2039
- READ_STRING_FIELD(name, name, name);
2386
+ AlterForeignServerStmt *node = makeNode(AlterForeignServerStmt);
2387
+ READ_STRING_FIELD(servername, servername, servername);
2388
+ READ_STRING_FIELD(version, version, version);
2389
+ READ_LIST_FIELD(options, options, options);
2390
+ READ_BOOL_FIELD(has_version, has_version, has_version);
2040
2391
  return node;
2041
2392
  }
2042
2393
 
2043
- static AlterSystemStmt *
2044
- _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg)
2394
+ static CreateForeignTableStmt *
2395
+ _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg)
2045
2396
  {
2046
- AlterSystemStmt *node = makeNode(AlterSystemStmt);
2047
- READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2397
+ CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt);
2398
+ READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
2399
+ READ_STRING_FIELD(servername, servername, servername);
2400
+ READ_LIST_FIELD(options, options, options);
2401
+ NodeSetTag(node, T_CreateForeignTableStmt);
2402
+ return node;
2403
+ }
2404
+
2405
+ static CreateUserMappingStmt *
2406
+ _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg)
2407
+ {
2408
+ CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt);
2409
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2410
+ READ_STRING_FIELD(servername, servername, servername);
2411
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2412
+ READ_LIST_FIELD(options, options, options);
2413
+ return node;
2414
+ }
2415
+
2416
+ static AlterUserMappingStmt *
2417
+ _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg)
2418
+ {
2419
+ AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt);
2420
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2421
+ READ_STRING_FIELD(servername, servername, servername);
2422
+ READ_LIST_FIELD(options, options, options);
2423
+ return node;
2424
+ }
2425
+
2426
+ static DropUserMappingStmt *
2427
+ _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg)
2428
+ {
2429
+ DropUserMappingStmt *node = makeNode(DropUserMappingStmt);
2430
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2431
+ READ_STRING_FIELD(servername, servername, servername);
2432
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2433
+ return node;
2434
+ }
2435
+
2436
+ static ImportForeignSchemaStmt *
2437
+ _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg)
2438
+ {
2439
+ ImportForeignSchemaStmt *node = makeNode(ImportForeignSchemaStmt);
2440
+ READ_STRING_FIELD(server_name, server_name, server_name);
2441
+ READ_STRING_FIELD(remote_schema, remote_schema, remote_schema);
2442
+ READ_STRING_FIELD(local_schema, local_schema, local_schema);
2443
+ READ_ENUM_FIELD(ImportForeignSchemaType, list_type, list_type, list_type);
2444
+ READ_LIST_FIELD(table_list, table_list, table_list);
2445
+ READ_LIST_FIELD(options, options, options);
2048
2446
  return node;
2049
2447
  }
2050
2448
 
@@ -2074,20 +2472,8 @@ _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg)
2074
2472
  return node;
2075
2473
  }
2076
2474
 
2077
- static CreateTransformStmt *
2078
- _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg)
2079
- {
2080
- CreateTransformStmt *node = makeNode(CreateTransformStmt);
2081
- READ_BOOL_FIELD(replace, replace, replace);
2082
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
2083
- READ_STRING_FIELD(lang, lang, lang);
2084
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
2085
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2086
- return node;
2087
- }
2088
-
2089
- static CreateAmStmt *
2090
- _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg)
2475
+ static CreateAmStmt *
2476
+ _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg)
2091
2477
  {
2092
2478
  CreateAmStmt *node = makeNode(CreateAmStmt);
2093
2479
  READ_STRING_FIELD(amname, amname, amname);
@@ -2096,785 +2482,922 @@ _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg)
2096
2482
  return node;
2097
2483
  }
2098
2484
 
2099
- static CreatePublicationStmt *
2100
- _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg)
2485
+ static CreateTrigStmt *
2486
+ _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg)
2101
2487
  {
2102
- CreatePublicationStmt *node = makeNode(CreatePublicationStmt);
2103
- READ_STRING_FIELD(pubname, pubname, pubname);
2104
- READ_LIST_FIELD(options, options, options);
2105
- READ_LIST_FIELD(tables, tables, tables);
2106
- READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2488
+ CreateTrigStmt *node = makeNode(CreateTrigStmt);
2489
+ READ_BOOL_FIELD(replace, replace, replace);
2490
+ READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2491
+ READ_STRING_FIELD(trigname, trigname, trigname);
2492
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2493
+ READ_LIST_FIELD(funcname, funcname, funcname);
2494
+ READ_LIST_FIELD(args, args, args);
2495
+ READ_BOOL_FIELD(row, row, row);
2496
+ READ_INT_FIELD(timing, timing, timing);
2497
+ READ_INT_FIELD(events, events, events);
2498
+ READ_LIST_FIELD(columns, columns, columns);
2499
+ READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
2500
+ READ_LIST_FIELD(transition_rels, transitionRels, transitionRels);
2501
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2502
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2503
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
2107
2504
  return node;
2108
2505
  }
2109
2506
 
2110
- static AlterPublicationStmt *
2111
- _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg)
2507
+ static CreateEventTrigStmt *
2508
+ _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg)
2112
2509
  {
2113
- AlterPublicationStmt *node = makeNode(AlterPublicationStmt);
2114
- READ_STRING_FIELD(pubname, pubname, pubname);
2115
- READ_LIST_FIELD(options, options, options);
2116
- READ_LIST_FIELD(tables, tables, tables);
2117
- READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2118
- READ_ENUM_FIELD(DefElemAction, table_action, tableAction, tableAction);
2510
+ CreateEventTrigStmt *node = makeNode(CreateEventTrigStmt);
2511
+ READ_STRING_FIELD(trigname, trigname, trigname);
2512
+ READ_STRING_FIELD(eventname, eventname, eventname);
2513
+ READ_LIST_FIELD(whenclause, whenclause, whenclause);
2514
+ READ_LIST_FIELD(funcname, funcname, funcname);
2119
2515
  return node;
2120
2516
  }
2121
2517
 
2122
- static CreateSubscriptionStmt *
2123
- _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg)
2518
+ static AlterEventTrigStmt *
2519
+ _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg)
2124
2520
  {
2125
- CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt);
2126
- READ_STRING_FIELD(subname, subname, subname);
2127
- READ_STRING_FIELD(conninfo, conninfo, conninfo);
2128
- READ_LIST_FIELD(publication, publication, publication);
2129
- READ_LIST_FIELD(options, options, options);
2521
+ AlterEventTrigStmt *node = makeNode(AlterEventTrigStmt);
2522
+ READ_STRING_FIELD(trigname, trigname, trigname);
2523
+ READ_CHAR_FIELD(tgenabled, tgenabled, tgenabled);
2130
2524
  return node;
2131
2525
  }
2132
2526
 
2133
- static AlterSubscriptionStmt *
2134
- _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg)
2527
+ static CreatePLangStmt *
2528
+ _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg)
2135
2529
  {
2136
- AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt);
2137
- READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
2138
- READ_STRING_FIELD(subname, subname, subname);
2139
- READ_STRING_FIELD(conninfo, conninfo, conninfo);
2140
- READ_LIST_FIELD(publication, publication, publication);
2141
- READ_LIST_FIELD(options, options, options);
2530
+ CreatePLangStmt *node = makeNode(CreatePLangStmt);
2531
+ READ_BOOL_FIELD(replace, replace, replace);
2532
+ READ_STRING_FIELD(plname, plname, plname);
2533
+ READ_LIST_FIELD(plhandler, plhandler, plhandler);
2534
+ READ_LIST_FIELD(plinline, plinline, plinline);
2535
+ READ_LIST_FIELD(plvalidator, plvalidator, plvalidator);
2536
+ READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
2142
2537
  return node;
2143
2538
  }
2144
2539
 
2145
- static DropSubscriptionStmt *
2146
- _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg)
2540
+ static CreateRoleStmt *
2541
+ _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg)
2147
2542
  {
2148
- DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt);
2149
- READ_STRING_FIELD(subname, subname, subname);
2150
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2151
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2543
+ CreateRoleStmt *node = makeNode(CreateRoleStmt);
2544
+ READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
2545
+ READ_STRING_FIELD(role, role, role);
2546
+ READ_LIST_FIELD(options, options, options);
2152
2547
  return node;
2153
2548
  }
2154
2549
 
2155
- static CreateStatsStmt *
2156
- _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg)
2550
+ static AlterRoleStmt *
2551
+ _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg)
2157
2552
  {
2158
- CreateStatsStmt *node = makeNode(CreateStatsStmt);
2159
- READ_LIST_FIELD(defnames, defnames, defnames);
2160
- READ_LIST_FIELD(stat_types, stat_types, stat_types);
2161
- READ_LIST_FIELD(exprs, exprs, exprs);
2162
- READ_LIST_FIELD(relations, relations, relations);
2163
- READ_STRING_FIELD(stxcomment, stxcomment, stxcomment);
2164
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2553
+ AlterRoleStmt *node = makeNode(AlterRoleStmt);
2554
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
2555
+ READ_LIST_FIELD(options, options, options);
2556
+ READ_INT_FIELD(action, action, action);
2165
2557
  return node;
2166
2558
  }
2167
2559
 
2168
- static AlterCollationStmt *
2169
- _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg)
2560
+ static AlterRoleSetStmt *
2561
+ _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg)
2170
2562
  {
2171
- AlterCollationStmt *node = makeNode(AlterCollationStmt);
2172
- READ_LIST_FIELD(collname, collname, collname);
2563
+ AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt);
2564
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
2565
+ READ_STRING_FIELD(database, database, database);
2566
+ READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2173
2567
  return node;
2174
2568
  }
2175
2569
 
2176
- static CallStmt *
2177
- _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg)
2570
+ static DropRoleStmt *
2571
+ _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg)
2178
2572
  {
2179
- CallStmt *node = makeNode(CallStmt);
2180
- READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
2181
- READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2573
+ DropRoleStmt *node = makeNode(DropRoleStmt);
2574
+ READ_LIST_FIELD(roles, roles, roles);
2575
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2182
2576
  return node;
2183
2577
  }
2184
2578
 
2185
- static AlterStatsStmt *
2186
- _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg)
2579
+ static CreateSeqStmt *
2580
+ _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg)
2187
2581
  {
2188
- AlterStatsStmt *node = makeNode(AlterStatsStmt);
2189
- READ_LIST_FIELD(defnames, defnames, defnames);
2190
- READ_INT_FIELD(stxstattarget, stxstattarget, stxstattarget);
2191
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2582
+ CreateSeqStmt *node = makeNode(CreateSeqStmt);
2583
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2584
+ READ_LIST_FIELD(options, options, options);
2585
+ READ_UINT_FIELD(owner_id, ownerId, ownerId);
2586
+ READ_BOOL_FIELD(for_identity, for_identity, for_identity);
2587
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2192
2588
  return node;
2193
2589
  }
2194
2590
 
2195
- static A_Expr *
2196
- _readAExpr(OUT_TYPE(A_Expr, AExpr) msg)
2591
+ static AlterSeqStmt *
2592
+ _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg)
2197
2593
  {
2198
- A_Expr *node = makeNode(A_Expr);
2199
- READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
2200
- READ_LIST_FIELD(name, name, name);
2201
- READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
2202
- READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
2203
- READ_INT_FIELD(location, location, location);
2594
+ AlterSeqStmt *node = makeNode(AlterSeqStmt);
2595
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2596
+ READ_LIST_FIELD(options, options, options);
2597
+ READ_BOOL_FIELD(for_identity, for_identity, for_identity);
2598
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2204
2599
  return node;
2205
2600
  }
2206
2601
 
2207
- static ColumnRef *
2208
- _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg)
2602
+ static DefineStmt *
2603
+ _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg)
2209
2604
  {
2210
- ColumnRef *node = makeNode(ColumnRef);
2211
- READ_LIST_FIELD(fields, fields, fields);
2212
- READ_INT_FIELD(location, location, location);
2605
+ DefineStmt *node = makeNode(DefineStmt);
2606
+ READ_ENUM_FIELD(ObjectType, kind, kind, kind);
2607
+ READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
2608
+ READ_LIST_FIELD(defnames, defnames, defnames);
2609
+ READ_LIST_FIELD(args, args, args);
2610
+ READ_LIST_FIELD(definition, definition, definition);
2611
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2612
+ READ_BOOL_FIELD(replace, replace, replace);
2213
2613
  return node;
2214
2614
  }
2215
2615
 
2216
- static ParamRef *
2217
- _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg)
2616
+ static CreateDomainStmt *
2617
+ _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg)
2218
2618
  {
2219
- ParamRef *node = makeNode(ParamRef);
2220
- READ_INT_FIELD(number, number, number);
2221
- READ_INT_FIELD(location, location, location);
2619
+ CreateDomainStmt *node = makeNode(CreateDomainStmt);
2620
+ READ_LIST_FIELD(domainname, domainname, domainname);
2621
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2622
+ READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2623
+ READ_LIST_FIELD(constraints, constraints, constraints);
2222
2624
  return node;
2223
2625
  }
2224
2626
 
2225
- static A_Const *
2226
- _readAConst(OUT_TYPE(A_Const, AConst) msg)
2627
+ static CreateOpClassStmt *
2628
+ _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg)
2227
2629
  {
2228
- A_Const *node = makeNode(A_Const);
2229
- READ_VALUE_FIELD(val, val, val);
2230
- READ_INT_FIELD(location, location, location);
2630
+ CreateOpClassStmt *node = makeNode(CreateOpClassStmt);
2631
+ READ_LIST_FIELD(opclassname, opclassname, opclassname);
2632
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2633
+ READ_STRING_FIELD(amname, amname, amname);
2634
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
2635
+ READ_LIST_FIELD(items, items, items);
2636
+ READ_BOOL_FIELD(is_default, isDefault, isDefault);
2231
2637
  return node;
2232
2638
  }
2233
2639
 
2234
- static FuncCall *
2235
- _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg)
2640
+ static CreateOpClassItem *
2641
+ _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg)
2236
2642
  {
2237
- FuncCall *node = makeNode(FuncCall);
2238
- READ_LIST_FIELD(funcname, funcname, funcname);
2239
- READ_LIST_FIELD(args, args, args);
2240
- READ_LIST_FIELD(agg_order, agg_order, agg_order);
2241
- READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
2242
- READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
2243
- READ_BOOL_FIELD(agg_star, agg_star, agg_star);
2244
- READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
2245
- READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
2246
- READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
2247
- READ_INT_FIELD(location, location, location);
2643
+ CreateOpClassItem *node = makeNode(CreateOpClassItem);
2644
+ READ_INT_FIELD(itemtype, itemtype, itemtype);
2645
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2646
+ READ_INT_FIELD(number, number, number);
2647
+ READ_LIST_FIELD(order_family, order_family, order_family);
2648
+ READ_LIST_FIELD(class_args, class_args, class_args);
2649
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
2248
2650
  return node;
2249
2651
  }
2250
2652
 
2251
- static A_Star *
2252
- _readAStar(OUT_TYPE(A_Star, AStar) msg)
2653
+ static CreateOpFamilyStmt *
2654
+ _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg)
2253
2655
  {
2254
- A_Star *node = makeNode(A_Star);
2656
+ CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt);
2657
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2658
+ READ_STRING_FIELD(amname, amname, amname);
2255
2659
  return node;
2256
2660
  }
2257
2661
 
2258
- static A_Indices *
2259
- _readAIndices(OUT_TYPE(A_Indices, AIndices) msg)
2662
+ static AlterOpFamilyStmt *
2663
+ _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg)
2260
2664
  {
2261
- A_Indices *node = makeNode(A_Indices);
2262
- READ_BOOL_FIELD(is_slice, is_slice, is_slice);
2263
- READ_NODE_PTR_FIELD(lidx, lidx, lidx);
2264
- READ_NODE_PTR_FIELD(uidx, uidx, uidx);
2665
+ AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt);
2666
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2667
+ READ_STRING_FIELD(amname, amname, amname);
2668
+ READ_BOOL_FIELD(is_drop, isDrop, isDrop);
2669
+ READ_LIST_FIELD(items, items, items);
2265
2670
  return node;
2266
2671
  }
2267
2672
 
2268
- static A_Indirection *
2269
- _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg)
2673
+ static DropStmt *
2674
+ _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg)
2270
2675
  {
2271
- A_Indirection *node = makeNode(A_Indirection);
2272
- READ_NODE_PTR_FIELD(arg, arg, arg);
2273
- READ_LIST_FIELD(indirection, indirection, indirection);
2676
+ DropStmt *node = makeNode(DropStmt);
2677
+ READ_LIST_FIELD(objects, objects, objects);
2678
+ READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
2679
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2680
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2681
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2274
2682
  return node;
2275
2683
  }
2276
2684
 
2277
- static A_ArrayExpr *
2278
- _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg)
2685
+ static TruncateStmt *
2686
+ _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg)
2279
2687
  {
2280
- A_ArrayExpr *node = makeNode(A_ArrayExpr);
2281
- READ_LIST_FIELD(elements, elements, elements);
2282
- READ_INT_FIELD(location, location, location);
2688
+ TruncateStmt *node = makeNode(TruncateStmt);
2689
+ READ_LIST_FIELD(relations, relations, relations);
2690
+ READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
2691
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2283
2692
  return node;
2284
2693
  }
2285
2694
 
2286
- static ResTarget *
2287
- _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg)
2695
+ static CommentStmt *
2696
+ _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg)
2288
2697
  {
2289
- ResTarget *node = makeNode(ResTarget);
2290
- READ_STRING_FIELD(name, name, name);
2291
- READ_LIST_FIELD(indirection, indirection, indirection);
2292
- READ_NODE_PTR_FIELD(val, val, val);
2293
- READ_INT_FIELD(location, location, location);
2698
+ CommentStmt *node = makeNode(CommentStmt);
2699
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2700
+ READ_NODE_PTR_FIELD(object, object, object);
2701
+ READ_STRING_FIELD(comment, comment, comment);
2294
2702
  return node;
2295
2703
  }
2296
2704
 
2297
- static MultiAssignRef *
2298
- _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg)
2705
+ static SecLabelStmt *
2706
+ _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg)
2299
2707
  {
2300
- MultiAssignRef *node = makeNode(MultiAssignRef);
2301
- READ_NODE_PTR_FIELD(source, source, source);
2302
- READ_INT_FIELD(colno, colno, colno);
2303
- READ_INT_FIELD(ncolumns, ncolumns, ncolumns);
2708
+ SecLabelStmt *node = makeNode(SecLabelStmt);
2709
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2710
+ READ_NODE_PTR_FIELD(object, object, object);
2711
+ READ_STRING_FIELD(provider, provider, provider);
2712
+ READ_STRING_FIELD(label, label, label);
2304
2713
  return node;
2305
2714
  }
2306
2715
 
2307
- static TypeCast *
2308
- _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg)
2716
+ static DeclareCursorStmt *
2717
+ _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg)
2309
2718
  {
2310
- TypeCast *node = makeNode(TypeCast);
2311
- READ_NODE_PTR_FIELD(arg, arg, arg);
2312
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2313
- READ_INT_FIELD(location, location, location);
2719
+ DeclareCursorStmt *node = makeNode(DeclareCursorStmt);
2720
+ READ_STRING_FIELD(portalname, portalname, portalname);
2721
+ READ_INT_FIELD(options, options, options);
2722
+ READ_NODE_PTR_FIELD(query, query, query);
2314
2723
  return node;
2315
2724
  }
2316
2725
 
2317
- static CollateClause *
2318
- _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg)
2726
+ static ClosePortalStmt *
2727
+ _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg)
2319
2728
  {
2320
- CollateClause *node = makeNode(CollateClause);
2321
- READ_NODE_PTR_FIELD(arg, arg, arg);
2322
- READ_LIST_FIELD(collname, collname, collname);
2323
- READ_INT_FIELD(location, location, location);
2729
+ ClosePortalStmt *node = makeNode(ClosePortalStmt);
2730
+ READ_STRING_FIELD(portalname, portalname, portalname);
2324
2731
  return node;
2325
2732
  }
2326
2733
 
2327
- static SortBy *
2328
- _readSortBy(OUT_TYPE(SortBy, SortBy) msg)
2734
+ static FetchStmt *
2735
+ _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg)
2329
2736
  {
2330
- SortBy *node = makeNode(SortBy);
2331
- READ_NODE_PTR_FIELD(node, node, node);
2332
- READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
2333
- READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
2334
- READ_LIST_FIELD(use_op, useOp, useOp);
2335
- READ_INT_FIELD(location, location, location);
2737
+ FetchStmt *node = makeNode(FetchStmt);
2738
+ READ_ENUM_FIELD(FetchDirection, direction, direction, direction);
2739
+ READ_LONG_FIELD(how_many, howMany, howMany);
2740
+ READ_STRING_FIELD(portalname, portalname, portalname);
2741
+ READ_BOOL_FIELD(ismove, ismove, ismove);
2336
2742
  return node;
2337
2743
  }
2338
2744
 
2339
- static WindowDef *
2340
- _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg)
2745
+ static IndexStmt *
2746
+ _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg)
2341
2747
  {
2342
- WindowDef *node = makeNode(WindowDef);
2748
+ IndexStmt *node = makeNode(IndexStmt);
2749
+ READ_STRING_FIELD(idxname, idxname, idxname);
2750
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2751
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
2752
+ READ_STRING_FIELD(table_space, tableSpace, tableSpace);
2753
+ READ_LIST_FIELD(index_params, indexParams, indexParams);
2754
+ READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
2755
+ READ_LIST_FIELD(options, options, options);
2756
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2757
+ READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
2758
+ READ_STRING_FIELD(idxcomment, idxcomment, idxcomment);
2759
+ READ_UINT_FIELD(index_oid, indexOid, indexOid);
2760
+ READ_UINT_FIELD(old_number, oldNumber, oldNumber);
2761
+ READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
2762
+ READ_UINT_FIELD(old_first_relfilelocator_subid, oldFirstRelfilelocatorSubid, oldFirstRelfilelocatorSubid);
2763
+ READ_BOOL_FIELD(unique, unique, unique);
2764
+ READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2765
+ READ_BOOL_FIELD(primary, primary, primary);
2766
+ READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2767
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2768
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2769
+ READ_BOOL_FIELD(transformed, transformed, transformed);
2770
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2771
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2772
+ READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2773
+ return node;
2774
+ }
2775
+
2776
+ static CreateStatsStmt *
2777
+ _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg)
2778
+ {
2779
+ CreateStatsStmt *node = makeNode(CreateStatsStmt);
2780
+ READ_LIST_FIELD(defnames, defnames, defnames);
2781
+ READ_LIST_FIELD(stat_types, stat_types, stat_types);
2782
+ READ_LIST_FIELD(exprs, exprs, exprs);
2783
+ READ_LIST_FIELD(relations, relations, relations);
2784
+ READ_STRING_FIELD(stxcomment, stxcomment, stxcomment);
2785
+ READ_BOOL_FIELD(transformed, transformed, transformed);
2786
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2787
+ return node;
2788
+ }
2789
+
2790
+ static StatsElem *
2791
+ _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg)
2792
+ {
2793
+ StatsElem *node = makeNode(StatsElem);
2343
2794
  READ_STRING_FIELD(name, name, name);
2344
- READ_STRING_FIELD(refname, refname, refname);
2345
- READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
2346
- READ_LIST_FIELD(order_clause, orderClause, orderClause);
2347
- READ_INT_FIELD(frame_options, frameOptions, frameOptions);
2348
- READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
2349
- READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
2350
- READ_INT_FIELD(location, location, location);
2795
+ READ_NODE_PTR_FIELD(expr, expr, expr);
2351
2796
  return node;
2352
2797
  }
2353
2798
 
2354
- static RangeSubselect *
2355
- _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg)
2799
+ static AlterStatsStmt *
2800
+ _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg)
2356
2801
  {
2357
- RangeSubselect *node = makeNode(RangeSubselect);
2358
- READ_BOOL_FIELD(lateral, lateral, lateral);
2359
- READ_NODE_PTR_FIELD(subquery, subquery, subquery);
2360
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2802
+ AlterStatsStmt *node = makeNode(AlterStatsStmt);
2803
+ READ_LIST_FIELD(defnames, defnames, defnames);
2804
+ READ_NODE_PTR_FIELD(stxstattarget, stxstattarget, stxstattarget);
2805
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2361
2806
  return node;
2362
2807
  }
2363
2808
 
2364
- static RangeFunction *
2365
- _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg)
2809
+ static CreateFunctionStmt *
2810
+ _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg)
2366
2811
  {
2367
- RangeFunction *node = makeNode(RangeFunction);
2368
- READ_BOOL_FIELD(lateral, lateral, lateral);
2369
- READ_BOOL_FIELD(ordinality, ordinality, ordinality);
2370
- READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
2371
- READ_LIST_FIELD(functions, functions, functions);
2372
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2373
- READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2812
+ CreateFunctionStmt *node = makeNode(CreateFunctionStmt);
2813
+ READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
2814
+ READ_BOOL_FIELD(replace, replace, replace);
2815
+ READ_LIST_FIELD(funcname, funcname, funcname);
2816
+ READ_LIST_FIELD(parameters, parameters, parameters);
2817
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
2818
+ READ_LIST_FIELD(options, options, options);
2819
+ READ_NODE_PTR_FIELD(sql_body, sql_body, sql_body);
2374
2820
  return node;
2375
2821
  }
2376
2822
 
2377
- static RangeTableSample *
2378
- _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg)
2823
+ static FunctionParameter *
2824
+ _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg)
2379
2825
  {
2380
- RangeTableSample *node = makeNode(RangeTableSample);
2381
- READ_NODE_PTR_FIELD(relation, relation, relation);
2382
- READ_LIST_FIELD(method, method, method);
2383
- READ_LIST_FIELD(args, args, args);
2384
- READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
2385
- READ_INT_FIELD(location, location, location);
2826
+ FunctionParameter *node = makeNode(FunctionParameter);
2827
+ READ_STRING_FIELD(name, name, name);
2828
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2829
+ READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2830
+ READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
2386
2831
  return node;
2387
2832
  }
2388
2833
 
2389
- static RangeTableFunc *
2390
- _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg)
2834
+ static AlterFunctionStmt *
2835
+ _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg)
2391
2836
  {
2392
- RangeTableFunc *node = makeNode(RangeTableFunc);
2393
- READ_BOOL_FIELD(lateral, lateral, lateral);
2394
- READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
2395
- READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
2396
- READ_LIST_FIELD(namespaces, namespaces, namespaces);
2397
- READ_LIST_FIELD(columns, columns, columns);
2398
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2399
- READ_INT_FIELD(location, location, location);
2837
+ AlterFunctionStmt *node = makeNode(AlterFunctionStmt);
2838
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2839
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
2840
+ READ_LIST_FIELD(actions, actions, actions);
2400
2841
  return node;
2401
2842
  }
2402
2843
 
2403
- static RangeTableFuncCol *
2404
- _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg)
2844
+ static DoStmt *
2845
+ _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg)
2405
2846
  {
2406
- RangeTableFuncCol *node = makeNode(RangeTableFuncCol);
2407
- READ_STRING_FIELD(colname, colname, colname);
2408
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2409
- READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
2410
- READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2411
- READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
2412
- READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
2413
- READ_INT_FIELD(location, location, location);
2847
+ DoStmt *node = makeNode(DoStmt);
2848
+ READ_LIST_FIELD(args, args, args);
2414
2849
  return node;
2415
2850
  }
2416
2851
 
2417
- static TypeName *
2418
- _readTypeName(OUT_TYPE(TypeName, TypeName) msg)
2852
+ static InlineCodeBlock *
2853
+ _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg)
2419
2854
  {
2420
- TypeName *node = makeNode(TypeName);
2421
- READ_LIST_FIELD(names, names, names);
2422
- READ_UINT_FIELD(type_oid, typeOid, typeOid);
2423
- READ_BOOL_FIELD(setof, setof, setof);
2424
- READ_BOOL_FIELD(pct_type, pct_type, pct_type);
2425
- READ_LIST_FIELD(typmods, typmods, typmods);
2426
- READ_INT_FIELD(typemod, typemod, typemod);
2427
- READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
2428
- READ_INT_FIELD(location, location, location);
2855
+ InlineCodeBlock *node = makeNode(InlineCodeBlock);
2856
+ READ_STRING_FIELD(source_text, source_text, source_text);
2857
+ READ_UINT_FIELD(lang_oid, langOid, langOid);
2858
+ READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
2859
+ READ_BOOL_FIELD(atomic, atomic, atomic);
2429
2860
  return node;
2430
2861
  }
2431
2862
 
2432
- static ColumnDef *
2433
- _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg)
2863
+ static CallStmt *
2864
+ _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg)
2434
2865
  {
2435
- ColumnDef *node = makeNode(ColumnDef);
2436
- READ_STRING_FIELD(colname, colname, colname);
2437
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2438
- READ_INT_FIELD(inhcount, inhcount, inhcount);
2439
- READ_BOOL_FIELD(is_local, is_local, is_local);
2440
- READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2441
- READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
2442
- READ_CHAR_FIELD(storage, storage, storage);
2443
- READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
2444
- READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
2445
- READ_CHAR_FIELD(identity, identity, identity);
2446
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
2447
- READ_CHAR_FIELD(generated, generated, generated);
2448
- READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2449
- READ_UINT_FIELD(coll_oid, collOid, collOid);
2450
- READ_LIST_FIELD(constraints, constraints, constraints);
2451
- READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
2452
- READ_INT_FIELD(location, location, location);
2866
+ CallStmt *node = makeNode(CallStmt);
2867
+ READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
2868
+ READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2869
+ READ_LIST_FIELD(outargs, outargs, outargs);
2453
2870
  return node;
2454
2871
  }
2455
2872
 
2456
- static IndexElem *
2457
- _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg)
2873
+ static CallContext *
2874
+ _readCallContext(OUT_TYPE(CallContext, CallContext) msg)
2458
2875
  {
2459
- IndexElem *node = makeNode(IndexElem);
2460
- READ_STRING_FIELD(name, name, name);
2461
- READ_NODE_PTR_FIELD(expr, expr, expr);
2462
- READ_STRING_FIELD(indexcolname, indexcolname, indexcolname);
2463
- READ_LIST_FIELD(collation, collation, collation);
2464
- READ_LIST_FIELD(opclass, opclass, opclass);
2465
- READ_LIST_FIELD(opclassopts, opclassopts, opclassopts);
2466
- READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
2467
- READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
2876
+ CallContext *node = makeNode(CallContext);
2877
+ READ_BOOL_FIELD(atomic, atomic, atomic);
2468
2878
  return node;
2469
2879
  }
2470
2880
 
2471
- static Constraint *
2472
- _readConstraint(OUT_TYPE(Constraint, Constraint) msg)
2881
+ static RenameStmt *
2882
+ _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg)
2473
2883
  {
2474
- Constraint *node = makeNode(Constraint);
2475
- READ_ENUM_FIELD(ConstrType, contype, contype, contype);
2476
- READ_STRING_FIELD(conname, conname, conname);
2477
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2478
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2479
- READ_INT_FIELD(location, location, location);
2480
- READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
2481
- READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
2482
- READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
2483
- READ_CHAR_FIELD(generated_when, generated_when, generated_when);
2484
- READ_LIST_FIELD(keys, keys, keys);
2485
- READ_LIST_FIELD(including, including, including);
2486
- READ_LIST_FIELD(exclusions, exclusions, exclusions);
2884
+ RenameStmt *node = makeNode(RenameStmt);
2885
+ READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
2886
+ READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
2887
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2888
+ READ_NODE_PTR_FIELD(object, object, object);
2889
+ READ_STRING_FIELD(subname, subname, subname);
2890
+ READ_STRING_FIELD(newname, newname, newname);
2891
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2892
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2893
+ return node;
2894
+ }
2895
+
2896
+ static AlterObjectDependsStmt *
2897
+ _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg)
2898
+ {
2899
+ AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt);
2900
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2901
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2902
+ READ_NODE_PTR_FIELD(object, object, object);
2903
+ READ_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname);
2904
+ READ_BOOL_FIELD(remove, remove, remove);
2905
+ return node;
2906
+ }
2907
+
2908
+ static AlterObjectSchemaStmt *
2909
+ _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg)
2910
+ {
2911
+ AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt);
2912
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2913
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2914
+ READ_NODE_PTR_FIELD(object, object, object);
2915
+ READ_STRING_FIELD(newschema, newschema, newschema);
2916
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2917
+ return node;
2918
+ }
2919
+
2920
+ static AlterOwnerStmt *
2921
+ _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg)
2922
+ {
2923
+ AlterOwnerStmt *node = makeNode(AlterOwnerStmt);
2924
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2925
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2926
+ READ_NODE_PTR_FIELD(object, object, object);
2927
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
2928
+ return node;
2929
+ }
2930
+
2931
+ static AlterOperatorStmt *
2932
+ _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg)
2933
+ {
2934
+ AlterOperatorStmt *node = makeNode(AlterOperatorStmt);
2935
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
2487
2936
  READ_LIST_FIELD(options, options, options);
2488
- READ_STRING_FIELD(indexname, indexname, indexname);
2489
- READ_STRING_FIELD(indexspace, indexspace, indexspace);
2490
- READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2491
- READ_STRING_FIELD(access_method, access_method, access_method);
2492
- READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
2493
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
2494
- READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
2495
- READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
2496
- READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
2497
- READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
2498
- READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
2499
- READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
2500
- READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
2501
- READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
2502
- READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
2503
2937
  return node;
2504
2938
  }
2505
2939
 
2506
- static DefElem *
2507
- _readDefElem(OUT_TYPE(DefElem, DefElem) msg)
2940
+ static AlterTypeStmt *
2941
+ _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg)
2508
2942
  {
2509
- DefElem *node = makeNode(DefElem);
2510
- READ_STRING_FIELD(defnamespace, defnamespace, defnamespace);
2511
- READ_STRING_FIELD(defname, defname, defname);
2512
- READ_NODE_PTR_FIELD(arg, arg, arg);
2513
- READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
2943
+ AlterTypeStmt *node = makeNode(AlterTypeStmt);
2944
+ READ_LIST_FIELD(type_name, typeName, typeName);
2945
+ READ_LIST_FIELD(options, options, options);
2946
+ return node;
2947
+ }
2948
+
2949
+ static RuleStmt *
2950
+ _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg)
2951
+ {
2952
+ RuleStmt *node = makeNode(RuleStmt);
2953
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2954
+ READ_STRING_FIELD(rulename, rulename, rulename);
2955
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2956
+ READ_ENUM_FIELD(CmdType, event, event, event);
2957
+ READ_BOOL_FIELD(instead, instead, instead);
2958
+ READ_LIST_FIELD(actions, actions, actions);
2959
+ READ_BOOL_FIELD(replace, replace, replace);
2960
+ return node;
2961
+ }
2962
+
2963
+ static NotifyStmt *
2964
+ _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg)
2965
+ {
2966
+ NotifyStmt *node = makeNode(NotifyStmt);
2967
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2968
+ READ_STRING_FIELD(payload, payload, payload);
2969
+ return node;
2970
+ }
2971
+
2972
+ static ListenStmt *
2973
+ _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg)
2974
+ {
2975
+ ListenStmt *node = makeNode(ListenStmt);
2976
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2977
+ return node;
2978
+ }
2979
+
2980
+ static UnlistenStmt *
2981
+ _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg)
2982
+ {
2983
+ UnlistenStmt *node = makeNode(UnlistenStmt);
2984
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2985
+ return node;
2986
+ }
2987
+
2988
+ static TransactionStmt *
2989
+ _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg)
2990
+ {
2991
+ TransactionStmt *node = makeNode(TransactionStmt);
2992
+ READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
2993
+ READ_LIST_FIELD(options, options, options);
2994
+ READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
2995
+ READ_STRING_FIELD(gid, gid, gid);
2996
+ READ_BOOL_FIELD(chain, chain, chain);
2514
2997
  READ_INT_FIELD(location, location, location);
2515
2998
  return node;
2516
2999
  }
2517
3000
 
2518
- static RangeTblEntry *
2519
- _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg)
3001
+ static CompositeTypeStmt *
3002
+ _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg)
2520
3003
  {
2521
- RangeTblEntry *node = makeNode(RangeTblEntry);
2522
- READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
2523
- READ_UINT_FIELD(relid, relid, relid);
2524
- READ_CHAR_FIELD(relkind, relkind, relkind);
2525
- READ_INT_FIELD(rellockmode, rellockmode, rellockmode);
2526
- READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
2527
- READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
2528
- READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
2529
- READ_ENUM_FIELD(JoinType, jointype, jointype, jointype);
2530
- READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
2531
- READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
2532
- READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
2533
- READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
2534
- READ_LIST_FIELD(functions, functions, functions);
2535
- READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
2536
- READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
2537
- READ_LIST_FIELD(values_lists, values_lists, values_lists);
2538
- READ_STRING_FIELD(ctename, ctename, ctename);
2539
- READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
2540
- READ_BOOL_FIELD(self_reference, self_reference, self_reference);
2541
- READ_LIST_FIELD(coltypes, coltypes, coltypes);
2542
- READ_LIST_FIELD(coltypmods, coltypmods, coltypmods);
2543
- READ_LIST_FIELD(colcollations, colcollations, colcollations);
2544
- READ_STRING_FIELD(enrname, enrname, enrname);
2545
- READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
2546
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2547
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
2548
- READ_BOOL_FIELD(lateral, lateral, lateral);
2549
- READ_BOOL_FIELD(inh, inh, inh);
2550
- READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
2551
- READ_UINT_FIELD(required_perms, requiredPerms, requiredPerms);
2552
- READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
2553
- READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
2554
- READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
2555
- READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
2556
- READ_BITMAPSET_FIELD(extra_updated_cols, extraUpdatedCols, extraUpdatedCols);
2557
- READ_LIST_FIELD(security_quals, securityQuals, securityQuals);
3004
+ CompositeTypeStmt *node = makeNode(CompositeTypeStmt);
3005
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
3006
+ READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2558
3007
  return node;
2559
3008
  }
2560
3009
 
2561
- static RangeTblFunction *
2562
- _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg)
3010
+ static CreateEnumStmt *
3011
+ _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg)
2563
3012
  {
2564
- RangeTblFunction *node = makeNode(RangeTblFunction);
2565
- READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
2566
- READ_INT_FIELD(funccolcount, funccolcount, funccolcount);
2567
- READ_LIST_FIELD(funccolnames, funccolnames, funccolnames);
2568
- READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
2569
- READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
2570
- READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
2571
- READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
3013
+ CreateEnumStmt *node = makeNode(CreateEnumStmt);
3014
+ READ_LIST_FIELD(type_name, typeName, typeName);
3015
+ READ_LIST_FIELD(vals, vals, vals);
2572
3016
  return node;
2573
3017
  }
2574
3018
 
2575
- static TableSampleClause *
2576
- _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg)
3019
+ static CreateRangeStmt *
3020
+ _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg)
2577
3021
  {
2578
- TableSampleClause *node = makeNode(TableSampleClause);
2579
- READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
2580
- READ_LIST_FIELD(args, args, args);
2581
- READ_EXPR_PTR_FIELD(repeatable, repeatable, repeatable);
3022
+ CreateRangeStmt *node = makeNode(CreateRangeStmt);
3023
+ READ_LIST_FIELD(type_name, typeName, typeName);
3024
+ READ_LIST_FIELD(params, params, params);
2582
3025
  return node;
2583
3026
  }
2584
3027
 
2585
- static WithCheckOption *
2586
- _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg)
3028
+ static AlterEnumStmt *
3029
+ _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg)
2587
3030
  {
2588
- WithCheckOption *node = makeNode(WithCheckOption);
2589
- READ_ENUM_FIELD(WCOKind, kind, kind, kind);
2590
- READ_STRING_FIELD(relname, relname, relname);
2591
- READ_STRING_FIELD(polname, polname, polname);
2592
- READ_NODE_PTR_FIELD(qual, qual, qual);
2593
- READ_BOOL_FIELD(cascaded, cascaded, cascaded);
3031
+ AlterEnumStmt *node = makeNode(AlterEnumStmt);
3032
+ READ_LIST_FIELD(type_name, typeName, typeName);
3033
+ READ_STRING_FIELD(old_val, oldVal, oldVal);
3034
+ READ_STRING_FIELD(new_val, newVal, newVal);
3035
+ READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
3036
+ READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
3037
+ READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2594
3038
  return node;
2595
3039
  }
2596
3040
 
2597
- static SortGroupClause *
2598
- _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg)
3041
+ static ViewStmt *
3042
+ _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg)
2599
3043
  {
2600
- SortGroupClause *node = makeNode(SortGroupClause);
2601
- READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
2602
- READ_UINT_FIELD(eqop, eqop, eqop);
2603
- READ_UINT_FIELD(sortop, sortop, sortop);
2604
- READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
2605
- READ_BOOL_FIELD(hashable, hashable, hashable);
3044
+ ViewStmt *node = makeNode(ViewStmt);
3045
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
3046
+ READ_LIST_FIELD(aliases, aliases, aliases);
3047
+ READ_NODE_PTR_FIELD(query, query, query);
3048
+ READ_BOOL_FIELD(replace, replace, replace);
3049
+ READ_LIST_FIELD(options, options, options);
3050
+ READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
2606
3051
  return node;
2607
3052
  }
2608
3053
 
2609
- static GroupingSet *
2610
- _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg)
3054
+ static LoadStmt *
3055
+ _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg)
2611
3056
  {
2612
- GroupingSet *node = makeNode(GroupingSet);
2613
- READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
2614
- READ_LIST_FIELD(content, content, content);
2615
- READ_INT_FIELD(location, location, location);
3057
+ LoadStmt *node = makeNode(LoadStmt);
3058
+ READ_STRING_FIELD(filename, filename, filename);
2616
3059
  return node;
2617
3060
  }
2618
3061
 
2619
- static WindowClause *
2620
- _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg)
3062
+ static CreatedbStmt *
3063
+ _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg)
2621
3064
  {
2622
- WindowClause *node = makeNode(WindowClause);
2623
- READ_STRING_FIELD(name, name, name);
2624
- READ_STRING_FIELD(refname, refname, refname);
2625
- READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
2626
- READ_LIST_FIELD(order_clause, orderClause, orderClause);
2627
- READ_INT_FIELD(frame_options, frameOptions, frameOptions);
2628
- READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
2629
- READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
2630
- READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
2631
- READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
2632
- READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
2633
- READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
2634
- READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
2635
- READ_UINT_FIELD(winref, winref, winref);
2636
- READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
3065
+ CreatedbStmt *node = makeNode(CreatedbStmt);
3066
+ READ_STRING_FIELD(dbname, dbname, dbname);
3067
+ READ_LIST_FIELD(options, options, options);
2637
3068
  return node;
2638
3069
  }
2639
3070
 
2640
- static ObjectWithArgs *
2641
- _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg)
3071
+ static AlterDatabaseStmt *
3072
+ _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg)
2642
3073
  {
2643
- ObjectWithArgs *node = makeNode(ObjectWithArgs);
2644
- READ_LIST_FIELD(objname, objname, objname);
2645
- READ_LIST_FIELD(objargs, objargs, objargs);
2646
- READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
3074
+ AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt);
3075
+ READ_STRING_FIELD(dbname, dbname, dbname);
3076
+ READ_LIST_FIELD(options, options, options);
2647
3077
  return node;
2648
3078
  }
2649
3079
 
2650
- static AccessPriv *
2651
- _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg)
3080
+ static AlterDatabaseRefreshCollStmt *
3081
+ _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg)
2652
3082
  {
2653
- AccessPriv *node = makeNode(AccessPriv);
2654
- READ_STRING_FIELD(priv_name, priv_name, priv_name);
2655
- READ_LIST_FIELD(cols, cols, cols);
3083
+ AlterDatabaseRefreshCollStmt *node = makeNode(AlterDatabaseRefreshCollStmt);
3084
+ READ_STRING_FIELD(dbname, dbname, dbname);
3085
+ return node;
3086
+ }
3087
+
3088
+ static AlterDatabaseSetStmt *
3089
+ _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg)
3090
+ {
3091
+ AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt);
3092
+ READ_STRING_FIELD(dbname, dbname, dbname);
3093
+ READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
3094
+ return node;
3095
+ }
3096
+
3097
+ static DropdbStmt *
3098
+ _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg)
3099
+ {
3100
+ DropdbStmt *node = makeNode(DropdbStmt);
3101
+ READ_STRING_FIELD(dbname, dbname, dbname);
3102
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
3103
+ READ_LIST_FIELD(options, options, options);
3104
+ return node;
3105
+ }
3106
+
3107
+ static AlterSystemStmt *
3108
+ _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg)
3109
+ {
3110
+ AlterSystemStmt *node = makeNode(AlterSystemStmt);
3111
+ READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
3112
+ return node;
3113
+ }
3114
+
3115
+ static ClusterStmt *
3116
+ _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg)
3117
+ {
3118
+ ClusterStmt *node = makeNode(ClusterStmt);
3119
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
3120
+ READ_STRING_FIELD(indexname, indexname, indexname);
3121
+ READ_LIST_FIELD(params, params, params);
3122
+ return node;
3123
+ }
3124
+
3125
+ static VacuumStmt *
3126
+ _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg)
3127
+ {
3128
+ VacuumStmt *node = makeNode(VacuumStmt);
3129
+ READ_LIST_FIELD(options, options, options);
3130
+ READ_LIST_FIELD(rels, rels, rels);
3131
+ READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
3132
+ return node;
3133
+ }
3134
+
3135
+ static VacuumRelation *
3136
+ _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg)
3137
+ {
3138
+ VacuumRelation *node = makeNode(VacuumRelation);
3139
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
3140
+ READ_UINT_FIELD(oid, oid, oid);
3141
+ READ_LIST_FIELD(va_cols, va_cols, va_cols);
3142
+ return node;
3143
+ }
3144
+
3145
+ static ExplainStmt *
3146
+ _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg)
3147
+ {
3148
+ ExplainStmt *node = makeNode(ExplainStmt);
3149
+ READ_NODE_PTR_FIELD(query, query, query);
3150
+ READ_LIST_FIELD(options, options, options);
3151
+ return node;
3152
+ }
3153
+
3154
+ static CreateTableAsStmt *
3155
+ _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg)
3156
+ {
3157
+ CreateTableAsStmt *node = makeNode(CreateTableAsStmt);
3158
+ READ_NODE_PTR_FIELD(query, query, query);
3159
+ READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
3160
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
3161
+ READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
3162
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
3163
+ return node;
3164
+ }
3165
+
3166
+ static RefreshMatViewStmt *
3167
+ _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg)
3168
+ {
3169
+ RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt);
3170
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
3171
+ READ_BOOL_FIELD(skip_data, skipData, skipData);
3172
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
3173
+ return node;
3174
+ }
3175
+
3176
+ static CheckPointStmt *
3177
+ _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg)
3178
+ {
3179
+ CheckPointStmt *node = makeNode(CheckPointStmt);
3180
+ return node;
3181
+ }
3182
+
3183
+ static DiscardStmt *
3184
+ _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg)
3185
+ {
3186
+ DiscardStmt *node = makeNode(DiscardStmt);
3187
+ READ_ENUM_FIELD(DiscardMode, target, target, target);
2656
3188
  return node;
2657
3189
  }
2658
3190
 
2659
- static CreateOpClassItem *
2660
- _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg)
3191
+ static LockStmt *
3192
+ _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg)
2661
3193
  {
2662
- CreateOpClassItem *node = makeNode(CreateOpClassItem);
2663
- READ_INT_FIELD(itemtype, itemtype, itemtype);
2664
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2665
- READ_INT_FIELD(number, number, number);
2666
- READ_LIST_FIELD(order_family, order_family, order_family);
2667
- READ_LIST_FIELD(class_args, class_args, class_args);
2668
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
3194
+ LockStmt *node = makeNode(LockStmt);
3195
+ READ_LIST_FIELD(relations, relations, relations);
3196
+ READ_INT_FIELD(mode, mode, mode);
3197
+ READ_BOOL_FIELD(nowait, nowait, nowait);
2669
3198
  return node;
2670
3199
  }
2671
3200
 
2672
- static TableLikeClause *
2673
- _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg)
3201
+ static ConstraintsSetStmt *
3202
+ _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg)
2674
3203
  {
2675
- TableLikeClause *node = makeNode(TableLikeClause);
2676
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2677
- READ_UINT_FIELD(options, options, options);
2678
- READ_UINT_FIELD(relation_oid, relationOid, relationOid);
3204
+ ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt);
3205
+ READ_LIST_FIELD(constraints, constraints, constraints);
3206
+ READ_BOOL_FIELD(deferred, deferred, deferred);
2679
3207
  return node;
2680
3208
  }
2681
3209
 
2682
- static FunctionParameter *
2683
- _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg)
3210
+ static ReindexStmt *
3211
+ _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg)
2684
3212
  {
2685
- FunctionParameter *node = makeNode(FunctionParameter);
3213
+ ReindexStmt *node = makeNode(ReindexStmt);
3214
+ READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
3215
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2686
3216
  READ_STRING_FIELD(name, name, name);
2687
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2688
- READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2689
- READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
3217
+ READ_LIST_FIELD(params, params, params);
2690
3218
  return node;
2691
3219
  }
2692
3220
 
2693
- static LockingClause *
2694
- _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg)
3221
+ static CreateConversionStmt *
3222
+ _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg)
2695
3223
  {
2696
- LockingClause *node = makeNode(LockingClause);
2697
- READ_LIST_FIELD(locked_rels, lockedRels, lockedRels);
2698
- READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2699
- READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
3224
+ CreateConversionStmt *node = makeNode(CreateConversionStmt);
3225
+ READ_LIST_FIELD(conversion_name, conversion_name, conversion_name);
3226
+ READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
3227
+ READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
3228
+ READ_LIST_FIELD(func_name, func_name, func_name);
3229
+ READ_BOOL_FIELD(def, def, def);
2700
3230
  return node;
2701
3231
  }
2702
3232
 
2703
- static RowMarkClause *
2704
- _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg)
3233
+ static CreateCastStmt *
3234
+ _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg)
2705
3235
  {
2706
- RowMarkClause *node = makeNode(RowMarkClause);
2707
- READ_UINT_FIELD(rti, rti, rti);
2708
- READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2709
- READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
2710
- READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
3236
+ CreateCastStmt *node = makeNode(CreateCastStmt);
3237
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
3238
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
3239
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
3240
+ READ_ENUM_FIELD(CoercionContext, context, context, context);
3241
+ READ_BOOL_FIELD(inout, inout, inout);
2711
3242
  return node;
2712
3243
  }
2713
3244
 
2714
- static XmlSerialize *
2715
- _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg)
3245
+ static CreateTransformStmt *
3246
+ _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg)
2716
3247
  {
2717
- XmlSerialize *node = makeNode(XmlSerialize);
2718
- READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
2719
- READ_NODE_PTR_FIELD(expr, expr, expr);
2720
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2721
- READ_INT_FIELD(location, location, location);
3248
+ CreateTransformStmt *node = makeNode(CreateTransformStmt);
3249
+ READ_BOOL_FIELD(replace, replace, replace);
3250
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
3251
+ READ_STRING_FIELD(lang, lang, lang);
3252
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
3253
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2722
3254
  return node;
2723
3255
  }
2724
3256
 
2725
- static WithClause *
2726
- _readWithClause(OUT_TYPE(WithClause, WithClause) msg)
3257
+ static PrepareStmt *
3258
+ _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg)
2727
3259
  {
2728
- WithClause *node = makeNode(WithClause);
2729
- READ_LIST_FIELD(ctes, ctes, ctes);
2730
- READ_BOOL_FIELD(recursive, recursive, recursive);
2731
- READ_INT_FIELD(location, location, location);
3260
+ PrepareStmt *node = makeNode(PrepareStmt);
3261
+ READ_STRING_FIELD(name, name, name);
3262
+ READ_LIST_FIELD(argtypes, argtypes, argtypes);
3263
+ READ_NODE_PTR_FIELD(query, query, query);
2732
3264
  return node;
2733
3265
  }
2734
3266
 
2735
- static InferClause *
2736
- _readInferClause(OUT_TYPE(InferClause, InferClause) msg)
3267
+ static ExecuteStmt *
3268
+ _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg)
2737
3269
  {
2738
- InferClause *node = makeNode(InferClause);
2739
- READ_LIST_FIELD(index_elems, indexElems, indexElems);
2740
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2741
- READ_STRING_FIELD(conname, conname, conname);
2742
- READ_INT_FIELD(location, location, location);
3270
+ ExecuteStmt *node = makeNode(ExecuteStmt);
3271
+ READ_STRING_FIELD(name, name, name);
3272
+ READ_LIST_FIELD(params, params, params);
2743
3273
  return node;
2744
3274
  }
2745
3275
 
2746
- static OnConflictClause *
2747
- _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg)
3276
+ static DeallocateStmt *
3277
+ _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg)
2748
3278
  {
2749
- OnConflictClause *node = makeNode(OnConflictClause);
2750
- READ_ENUM_FIELD(OnConflictAction, action, action, action);
2751
- READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
2752
- READ_LIST_FIELD(target_list, targetList, targetList);
2753
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
3279
+ DeallocateStmt *node = makeNode(DeallocateStmt);
3280
+ READ_STRING_FIELD(name, name, name);
3281
+ READ_BOOL_FIELD(isall, isall, isall);
2754
3282
  READ_INT_FIELD(location, location, location);
2755
3283
  return node;
2756
3284
  }
2757
3285
 
2758
- static CommonTableExpr *
2759
- _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg)
3286
+ static DropOwnedStmt *
3287
+ _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg)
2760
3288
  {
2761
- CommonTableExpr *node = makeNode(CommonTableExpr);
2762
- READ_STRING_FIELD(ctename, ctename, ctename);
2763
- READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
2764
- READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
2765
- READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
2766
- READ_INT_FIELD(location, location, location);
2767
- READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
2768
- READ_INT_FIELD(cterefcount, cterefcount, cterefcount);
2769
- READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
2770
- READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
2771
- READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
2772
- READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
3289
+ DropOwnedStmt *node = makeNode(DropOwnedStmt);
3290
+ READ_LIST_FIELD(roles, roles, roles);
3291
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2773
3292
  return node;
2774
3293
  }
2775
3294
 
2776
- static RoleSpec *
2777
- _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg)
3295
+ static ReassignOwnedStmt *
3296
+ _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg)
2778
3297
  {
2779
- RoleSpec *node = makeNode(RoleSpec);
2780
- READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
2781
- READ_STRING_FIELD(rolename, rolename, rolename);
2782
- READ_INT_FIELD(location, location, location);
3298
+ ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt);
3299
+ READ_LIST_FIELD(roles, roles, roles);
3300
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
2783
3301
  return node;
2784
3302
  }
2785
3303
 
2786
- static TriggerTransition *
2787
- _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg)
3304
+ static AlterTSDictionaryStmt *
3305
+ _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg)
2788
3306
  {
2789
- TriggerTransition *node = makeNode(TriggerTransition);
2790
- READ_STRING_FIELD(name, name, name);
2791
- READ_BOOL_FIELD(is_new, isNew, isNew);
2792
- READ_BOOL_FIELD(is_table, isTable, isTable);
3307
+ AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt);
3308
+ READ_LIST_FIELD(dictname, dictname, dictname);
3309
+ READ_LIST_FIELD(options, options, options);
2793
3310
  return node;
2794
3311
  }
2795
3312
 
2796
- static PartitionElem *
2797
- _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg)
3313
+ static AlterTSConfigurationStmt *
3314
+ _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg)
2798
3315
  {
2799
- PartitionElem *node = makeNode(PartitionElem);
2800
- READ_STRING_FIELD(name, name, name);
2801
- READ_NODE_PTR_FIELD(expr, expr, expr);
2802
- READ_LIST_FIELD(collation, collation, collation);
2803
- READ_LIST_FIELD(opclass, opclass, opclass);
2804
- READ_INT_FIELD(location, location, location);
3316
+ AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt);
3317
+ READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
3318
+ READ_LIST_FIELD(cfgname, cfgname, cfgname);
3319
+ READ_LIST_FIELD(tokentype, tokentype, tokentype);
3320
+ READ_LIST_FIELD(dicts, dicts, dicts);
3321
+ READ_BOOL_FIELD(override, override, override);
3322
+ READ_BOOL_FIELD(replace, replace, replace);
3323
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2805
3324
  return node;
2806
3325
  }
2807
3326
 
2808
- static PartitionSpec *
2809
- _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg)
3327
+ static PublicationTable *
3328
+ _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg)
2810
3329
  {
2811
- PartitionSpec *node = makeNode(PartitionSpec);
2812
- READ_STRING_FIELD(strategy, strategy, strategy);
2813
- READ_LIST_FIELD(part_params, partParams, partParams);
2814
- READ_INT_FIELD(location, location, location);
3330
+ PublicationTable *node = makeNode(PublicationTable);
3331
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
3332
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
3333
+ READ_LIST_FIELD(columns, columns, columns);
2815
3334
  return node;
2816
3335
  }
2817
3336
 
2818
- static PartitionBoundSpec *
2819
- _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg)
3337
+ static PublicationObjSpec *
3338
+ _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg)
2820
3339
  {
2821
- PartitionBoundSpec *node = makeNode(PartitionBoundSpec);
2822
- READ_CHAR_FIELD(strategy, strategy, strategy);
2823
- READ_BOOL_FIELD(is_default, is_default, is_default);
2824
- READ_INT_FIELD(modulus, modulus, modulus);
2825
- READ_INT_FIELD(remainder, remainder, remainder);
2826
- READ_LIST_FIELD(listdatums, listdatums, listdatums);
2827
- READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
2828
- READ_LIST_FIELD(upperdatums, upperdatums, upperdatums);
3340
+ PublicationObjSpec *node = makeNode(PublicationObjSpec);
3341
+ READ_ENUM_FIELD(PublicationObjSpecType, pubobjtype, pubobjtype, pubobjtype);
3342
+ READ_STRING_FIELD(name, name, name);
3343
+ READ_SPECIFIC_NODE_PTR_FIELD(PublicationTable, publication_table, pubtable, pubtable, pubtable);
2829
3344
  READ_INT_FIELD(location, location, location);
2830
3345
  return node;
2831
3346
  }
2832
3347
 
2833
- static PartitionRangeDatum *
2834
- _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg)
3348
+ static CreatePublicationStmt *
3349
+ _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg)
2835
3350
  {
2836
- PartitionRangeDatum *node = makeNode(PartitionRangeDatum);
2837
- READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
2838
- READ_NODE_PTR_FIELD(value, value, value);
2839
- READ_INT_FIELD(location, location, location);
3351
+ CreatePublicationStmt *node = makeNode(CreatePublicationStmt);
3352
+ READ_STRING_FIELD(pubname, pubname, pubname);
3353
+ READ_LIST_FIELD(options, options, options);
3354
+ READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
3355
+ READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2840
3356
  return node;
2841
3357
  }
2842
3358
 
2843
- static PartitionCmd *
2844
- _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg)
3359
+ static AlterPublicationStmt *
3360
+ _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg)
2845
3361
  {
2846
- PartitionCmd *node = makeNode(PartitionCmd);
2847
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
2848
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
3362
+ AlterPublicationStmt *node = makeNode(AlterPublicationStmt);
3363
+ READ_STRING_FIELD(pubname, pubname, pubname);
3364
+ READ_LIST_FIELD(options, options, options);
3365
+ READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
3366
+ READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
3367
+ READ_ENUM_FIELD(AlterPublicationAction, action, action, action);
2849
3368
  return node;
2850
3369
  }
2851
3370
 
2852
- static VacuumRelation *
2853
- _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg)
3371
+ static CreateSubscriptionStmt *
3372
+ _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg)
2854
3373
  {
2855
- VacuumRelation *node = makeNode(VacuumRelation);
2856
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2857
- READ_UINT_FIELD(oid, oid, oid);
2858
- READ_LIST_FIELD(va_cols, va_cols, va_cols);
3374
+ CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt);
3375
+ READ_STRING_FIELD(subname, subname, subname);
3376
+ READ_STRING_FIELD(conninfo, conninfo, conninfo);
3377
+ READ_LIST_FIELD(publication, publication, publication);
3378
+ READ_LIST_FIELD(options, options, options);
2859
3379
  return node;
2860
3380
  }
2861
3381
 
2862
- static InlineCodeBlock *
2863
- _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg)
3382
+ static AlterSubscriptionStmt *
3383
+ _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg)
2864
3384
  {
2865
- InlineCodeBlock *node = makeNode(InlineCodeBlock);
2866
- READ_STRING_FIELD(source_text, source_text, source_text);
2867
- READ_UINT_FIELD(lang_oid, langOid, langOid);
2868
- READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
2869
- READ_BOOL_FIELD(atomic, atomic, atomic);
3385
+ AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt);
3386
+ READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
3387
+ READ_STRING_FIELD(subname, subname, subname);
3388
+ READ_STRING_FIELD(conninfo, conninfo, conninfo);
3389
+ READ_LIST_FIELD(publication, publication, publication);
3390
+ READ_LIST_FIELD(options, options, options);
2870
3391
  return node;
2871
3392
  }
2872
3393
 
2873
- static CallContext *
2874
- _readCallContext(OUT_TYPE(CallContext, CallContext) msg)
3394
+ static DropSubscriptionStmt *
3395
+ _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg)
2875
3396
  {
2876
- CallContext *node = makeNode(CallContext);
2877
- READ_BOOL_FIELD(atomic, atomic, atomic);
3397
+ DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt);
3398
+ READ_STRING_FIELD(subname, subname, subname);
3399
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
3400
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2878
3401
  return node;
2879
3402
  }
2880
3403