pg_query 4.2.1 → 5.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 (531) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/README.md +6 -8
  4. data/Rakefile +5 -6
  5. data/ext/pg_query/extconf.rb +14 -4
  6. data/ext/pg_query/include/pg_query.h +27 -3
  7. data/ext/pg_query/include/pg_query_enum_defs.c +311 -149
  8. data/ext/pg_query/include/pg_query_fingerprint_conds.c +545 -489
  9. data/ext/pg_query/include/pg_query_fingerprint_defs.c +5092 -4432
  10. data/ext/pg_query/include/pg_query_outfuncs_conds.c +385 -343
  11. data/ext/pg_query/include/pg_query_outfuncs_defs.c +1294 -1161
  12. data/ext/pg_query/include/pg_query_readfuncs_conds.c +137 -123
  13. data/ext/pg_query/include/pg_query_readfuncs_defs.c +1657 -1496
  14. data/ext/pg_query/include/{access → postgres/access}/amapi.h +3 -1
  15. data/ext/pg_query/include/{access → postgres/access}/attmap.h +5 -3
  16. data/ext/pg_query/include/{access → postgres/access}/attnum.h +1 -1
  17. data/ext/pg_query/include/{access → postgres/access}/clog.h +1 -1
  18. data/ext/pg_query/include/{access → postgres/access}/commit_ts.h +1 -1
  19. data/ext/pg_query/include/{access → postgres/access}/detoast.h +1 -1
  20. data/ext/pg_query/include/{access → postgres/access}/genam.h +7 -5
  21. data/ext/pg_query/include/{access → postgres/access}/gin.h +16 -3
  22. data/ext/pg_query/include/{access → postgres/access}/htup.h +1 -1
  23. data/ext/pg_query/include/{access → postgres/access}/htup_details.h +6 -2
  24. data/ext/pg_query/include/{access → postgres/access}/itup.h +61 -58
  25. data/ext/pg_query/include/{access → postgres/access}/parallel.h +2 -2
  26. data/ext/pg_query/include/{access → postgres/access}/printtup.h +1 -1
  27. data/ext/pg_query/include/{access → postgres/access}/relation.h +1 -1
  28. data/ext/pg_query/include/{access → postgres/access}/relscan.h +1 -1
  29. data/ext/pg_query/include/{access → postgres/access}/rmgrlist.h +2 -2
  30. data/ext/pg_query/include/{access → postgres/access}/sdir.h +12 -3
  31. data/ext/pg_query/include/{access → postgres/access}/skey.h +1 -1
  32. data/ext/pg_query/include/{access → postgres/access}/stratnum.h +1 -1
  33. data/ext/pg_query/include/{access → postgres/access}/sysattr.h +1 -1
  34. data/ext/pg_query/include/{access → postgres/access}/table.h +1 -1
  35. data/ext/pg_query/include/{access → postgres/access}/tableam.h +68 -45
  36. data/ext/pg_query/include/{access → postgres/access}/toast_compression.h +1 -1
  37. data/ext/pg_query/include/{access → postgres/access}/transam.h +1 -1
  38. data/ext/pg_query/include/postgres/access/tsmapi.h +82 -0
  39. data/ext/pg_query/include/{access → postgres/access}/tupconvert.h +5 -2
  40. data/ext/pg_query/include/{access → postgres/access}/tupdesc.h +2 -2
  41. data/ext/pg_query/include/{access → postgres/access}/tupmacs.h +58 -98
  42. data/ext/pg_query/include/{access → postgres/access}/twophase.h +2 -2
  43. data/ext/pg_query/include/{access → postgres/access}/xact.h +25 -18
  44. data/ext/pg_query/include/{access → postgres/access}/xlog.h +15 -16
  45. data/ext/pg_query/include/{access → postgres/access}/xlog_internal.h +100 -62
  46. data/ext/pg_query/include/postgres/access/xlogbackup.h +41 -0
  47. data/ext/pg_query/include/{access → postgres/access}/xlogdefs.h +6 -25
  48. data/ext/pg_query/include/{access → postgres/access}/xlogprefetcher.h +1 -1
  49. data/ext/pg_query/include/{access → postgres/access}/xlogreader.h +7 -6
  50. data/ext/pg_query/include/{access → postgres/access}/xlogrecord.h +17 -5
  51. data/ext/pg_query/include/{access → postgres/access}/xlogrecovery.h +4 -3
  52. data/ext/pg_query/include/postgres/archive/archive_module.h +59 -0
  53. data/ext/pg_query/include/{c.h → postgres/c.h} +144 -156
  54. data/ext/pg_query/include/{catalog → postgres/catalog}/catalog.h +4 -3
  55. data/ext/pg_query/include/{catalog → postgres/catalog}/catversion.h +6 -2
  56. data/ext/pg_query/include/{catalog → postgres/catalog}/dependency.h +5 -4
  57. data/ext/pg_query/include/{catalog → postgres/catalog}/genbki.h +7 -6
  58. data/ext/pg_query/include/{catalog → postgres/catalog}/index.h +4 -4
  59. data/ext/pg_query/include/{catalog → postgres/catalog}/indexing.h +1 -1
  60. data/ext/pg_query/include/{catalog → postgres/catalog}/namespace.h +2 -2
  61. data/ext/pg_query/include/{catalog → postgres/catalog}/objectaccess.h +10 -8
  62. data/ext/pg_query/include/{catalog → postgres/catalog}/objectaddress.h +3 -3
  63. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate.h +1 -1
  64. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_aggregate_d.h +1 -1
  65. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am.h +1 -1
  66. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_am_d.h +1 -1
  67. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute.h +19 -17
  68. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_attribute_d.h +19 -19
  69. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid.h +1 -1
  70. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_authid_d.h +3 -1
  71. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class.h +1 -1
  72. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_class_d.h +1 -1
  73. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation.h +3 -1
  74. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_collation_d.h +4 -3
  75. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint.h +2 -2
  76. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_constraint_d.h +1 -1
  77. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_control.h +9 -1
  78. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion.h +2 -2
  79. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_conversion_d.h +1 -1
  80. data/ext/pg_query/include/postgres/catalog/pg_database.h +124 -0
  81. data/ext/pg_query/include/postgres/catalog/pg_database_d.h +52 -0
  82. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend.h +1 -1
  83. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_depend_d.h +1 -1
  84. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger.h +1 -1
  85. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_event_trigger_d.h +1 -1
  86. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index.h +1 -1
  87. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_index_d.h +1 -1
  88. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language.h +1 -1
  89. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_language_d.h +1 -1
  90. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace.h +1 -1
  91. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_namespace_d.h +1 -1
  92. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass.h +1 -1
  93. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opclass_d.h +1 -1
  94. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator.h +1 -1
  95. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_operator_d.h +1 -1
  96. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily.h +3 -2
  97. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_opfamily_d.h +4 -2
  98. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table.h +1 -1
  99. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_partitioned_table_d.h +1 -1
  100. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc.h +1 -1
  101. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_proc_d.h +1 -1
  102. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication.h +2 -5
  103. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_publication_d.h +1 -1
  104. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin.h +1 -1
  105. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_replication_origin_d.h +1 -1
  106. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic.h +1 -1
  107. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_d.h +1 -1
  108. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext.h +1 -1
  109. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_statistic_ext_d.h +1 -1
  110. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform.h +1 -1
  111. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_transform_d.h +1 -1
  112. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger.h +1 -1
  113. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_trigger_d.h +1 -1
  114. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config.h +1 -1
  115. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_config_d.h +1 -1
  116. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict.h +1 -1
  117. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_dict_d.h +1 -1
  118. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser.h +1 -1
  119. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_parser_d.h +1 -1
  120. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template.h +1 -1
  121. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_ts_template_d.h +1 -1
  122. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type.h +1 -1
  123. data/ext/pg_query/include/{catalog → postgres/catalog}/pg_type_d.h +1 -1
  124. data/ext/pg_query/include/{catalog → postgres/catalog}/storage.h +6 -6
  125. data/ext/pg_query/include/{commands → postgres/commands}/async.h +1 -1
  126. data/ext/pg_query/include/{commands → postgres/commands}/dbcommands.h +2 -1
  127. data/ext/pg_query/include/{commands → postgres/commands}/defrem.h +2 -1
  128. data/ext/pg_query/include/{commands → postgres/commands}/event_trigger.h +1 -1
  129. data/ext/pg_query/include/{commands → postgres/commands}/explain.h +3 -1
  130. data/ext/pg_query/include/{commands → postgres/commands}/prepare.h +1 -1
  131. data/ext/pg_query/include/{commands → postgres/commands}/tablespace.h +4 -4
  132. data/ext/pg_query/include/{commands → postgres/commands}/trigger.h +15 -14
  133. data/ext/pg_query/include/{commands → postgres/commands}/user.h +9 -3
  134. data/ext/pg_query/include/{commands → postgres/commands}/vacuum.h +60 -14
  135. data/ext/pg_query/include/postgres/common/cryptohash.h +39 -0
  136. data/ext/pg_query/include/{common → postgres/common}/file_perm.h +1 -1
  137. data/ext/pg_query/include/{common → postgres/common}/hashfn.h +1 -1
  138. data/ext/pg_query/include/postgres/common/int.h +437 -0
  139. data/ext/pg_query/include/{common → postgres/common}/keywords.h +1 -1
  140. data/ext/pg_query/include/{common → postgres/common}/kwlookup.h +2 -2
  141. data/ext/pg_query/include/{common → postgres/common}/pg_prng.h +3 -2
  142. data/ext/pg_query/include/{common → postgres/common}/relpath.h +20 -13
  143. data/ext/pg_query/include/postgres/common/scram-common.h +70 -0
  144. data/ext/pg_query/include/postgres/common/sha2.h +32 -0
  145. data/ext/pg_query/include/{common → postgres/common}/string.h +5 -3
  146. data/ext/pg_query/include/{common → postgres/common}/unicode_east_asian_fw_table.h +10 -10
  147. data/ext/pg_query/include/{common/unicode_combining_table.h → postgres/common/unicode_nonspacing_table.h} +31 -13
  148. data/ext/pg_query/include/postgres/copyfuncs.funcs.c +5013 -0
  149. data/ext/pg_query/include/postgres/copyfuncs.switch.c +938 -0
  150. data/ext/pg_query/include/{datatype → postgres/datatype}/timestamp.h +11 -4
  151. data/ext/pg_query/include/postgres/equalfuncs.funcs.c +3097 -0
  152. data/ext/pg_query/include/postgres/equalfuncs.switch.c +785 -0
  153. data/ext/pg_query/include/{executor → postgres/executor}/execdesc.h +1 -1
  154. data/ext/pg_query/include/{executor → postgres/executor}/executor.h +34 -17
  155. data/ext/pg_query/include/{executor → postgres/executor}/functions.h +1 -1
  156. data/ext/pg_query/include/{executor → postgres/executor}/instrument.h +1 -1
  157. data/ext/pg_query/include/{executor → postgres/executor}/spi.h +2 -2
  158. data/ext/pg_query/include/{executor → postgres/executor}/tablefunc.h +1 -1
  159. data/ext/pg_query/include/{executor → postgres/executor}/tuptable.h +18 -11
  160. data/ext/pg_query/include/{fmgr.h → postgres/fmgr.h} +21 -2
  161. data/ext/pg_query/include/postgres/foreign/fdwapi.h +294 -0
  162. data/ext/pg_query/include/{funcapi.h → postgres/funcapi.h} +12 -12
  163. data/ext/pg_query/include/postgres/gram.h +1127 -0
  164. data/ext/pg_query/include/{parser → postgres}/gramparse.h +4 -4
  165. data/ext/pg_query/include/{jit → postgres/jit}/jit.h +2 -2
  166. data/ext/pg_query/include/postgres/kwlist_d.h +1119 -0
  167. data/ext/pg_query/include/{lib → postgres/lib}/dshash.h +4 -1
  168. data/ext/pg_query/include/{lib → postgres/lib}/ilist.h +435 -22
  169. data/ext/pg_query/include/{lib → postgres/lib}/pairingheap.h +1 -1
  170. data/ext/pg_query/include/{lib → postgres/lib}/simplehash.h +9 -9
  171. data/ext/pg_query/include/{lib → postgres/lib}/sort_template.h +1 -1
  172. data/ext/pg_query/include/{lib → postgres/lib}/stringinfo.h +3 -3
  173. data/ext/pg_query/include/{libpq → postgres/libpq}/auth.h +8 -2
  174. data/ext/pg_query/include/{libpq → postgres/libpq}/crypt.h +1 -1
  175. data/ext/pg_query/include/{libpq → postgres/libpq}/hba.h +24 -17
  176. data/ext/pg_query/include/{libpq → postgres/libpq}/libpq-be.h +36 -25
  177. data/ext/pg_query/include/{libpq → postgres/libpq}/libpq.h +1 -1
  178. data/ext/pg_query/include/{libpq → postgres/libpq}/pqcomm.h +10 -41
  179. data/ext/pg_query/include/{libpq → postgres/libpq}/pqformat.h +2 -2
  180. data/ext/pg_query/include/{libpq → postgres/libpq}/pqsignal.h +22 -10
  181. data/ext/pg_query/include/postgres/libpq/sasl.h +136 -0
  182. data/ext/pg_query/include/postgres/libpq/scram.h +37 -0
  183. data/ext/pg_query/include/{mb → postgres/mb}/pg_wchar.h +35 -18
  184. data/ext/pg_query/include/{mb → postgres/mb}/stringinfo_mb.h +1 -1
  185. data/ext/pg_query/include/{miscadmin.h → postgres/miscadmin.h} +27 -15
  186. data/ext/pg_query/include/{nodes → postgres/nodes}/bitmapset.h +11 -7
  187. data/ext/pg_query/include/{nodes → postgres/nodes}/execnodes.h +83 -30
  188. data/ext/pg_query/include/{nodes → postgres/nodes}/extensible.h +5 -3
  189. data/ext/pg_query/include/{nodes → postgres/nodes}/lockoptions.h +1 -1
  190. data/ext/pg_query/include/{nodes → postgres/nodes}/makefuncs.h +14 -2
  191. data/ext/pg_query/include/{nodes → postgres/nodes}/memnodes.h +7 -4
  192. data/ext/pg_query/include/postgres/nodes/miscnodes.h +56 -0
  193. data/ext/pg_query/include/{nodes → postgres/nodes}/nodeFuncs.h +89 -29
  194. data/ext/pg_query/include/{nodes → postgres/nodes}/nodes.h +96 -511
  195. data/ext/pg_query/include/postgres/nodes/nodetags.h +471 -0
  196. data/ext/pg_query/include/{nodes → postgres/nodes}/params.h +3 -3
  197. data/ext/pg_query/include/{nodes → postgres/nodes}/parsenodes.h +377 -139
  198. data/ext/pg_query/include/{nodes → postgres/nodes}/pathnodes.h +1090 -440
  199. data/ext/pg_query/include/{nodes → postgres/nodes}/pg_list.h +30 -7
  200. data/ext/pg_query/include/{nodes → postgres/nodes}/plannodes.h +367 -124
  201. data/ext/pg_query/include/{nodes → postgres/nodes}/primnodes.h +670 -222
  202. data/ext/pg_query/include/{nodes → postgres/nodes}/print.h +1 -1
  203. data/ext/pg_query/include/{utils → postgres/nodes}/queryjumble.h +5 -7
  204. data/ext/pg_query/include/postgres/nodes/replnodes.h +111 -0
  205. data/ext/pg_query/include/postgres/nodes/supportnodes.h +346 -0
  206. data/ext/pg_query/include/{nodes → postgres/nodes}/tidbitmap.h +1 -1
  207. data/ext/pg_query/include/{nodes → postgres/nodes}/value.h +12 -2
  208. data/ext/pg_query/include/{optimizer → postgres/optimizer}/cost.h +6 -4
  209. data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo.h +1 -1
  210. data/ext/pg_query/include/{optimizer → postgres/optimizer}/geqo_gene.h +1 -1
  211. data/ext/pg_query/include/{optimizer → postgres/optimizer}/optimizer.h +8 -8
  212. data/ext/pg_query/include/{optimizer → postgres/optimizer}/paths.h +16 -7
  213. data/ext/pg_query/include/{optimizer → postgres/optimizer}/planmain.h +3 -6
  214. data/ext/pg_query/include/{parser → postgres/parser}/analyze.h +4 -3
  215. data/ext/pg_query/include/{parser → postgres/parser}/kwlist.h +12 -1
  216. data/ext/pg_query/include/{parser → postgres/parser}/parse_agg.h +4 -2
  217. data/ext/pg_query/include/{parser → postgres/parser}/parse_coerce.h +3 -1
  218. data/ext/pg_query/include/{parser → postgres/parser}/parse_expr.h +1 -1
  219. data/ext/pg_query/include/{parser → postgres/parser}/parse_func.h +1 -1
  220. data/ext/pg_query/include/{parser → postgres/parser}/parse_node.h +22 -4
  221. data/ext/pg_query/include/{parser → postgres/parser}/parse_oper.h +3 -3
  222. data/ext/pg_query/include/{parser → postgres/parser}/parse_relation.h +8 -3
  223. data/ext/pg_query/include/{parser → postgres/parser}/parse_type.h +4 -3
  224. data/ext/pg_query/include/{parser → postgres/parser}/parser.h +4 -4
  225. data/ext/pg_query/include/{parser → postgres/parser}/parsetree.h +1 -1
  226. data/ext/pg_query/include/{parser → postgres/parser}/scanner.h +2 -2
  227. data/ext/pg_query/include/{parser → postgres/parser}/scansup.h +1 -1
  228. data/ext/pg_query/include/{partitioning → postgres/partitioning}/partdefs.h +1 -1
  229. data/ext/pg_query/include/{pg_config.h → postgres/pg_config.h} +158 -218
  230. data/ext/pg_query/include/{pg_config_manual.h → postgres/pg_config_manual.h} +8 -46
  231. data/ext/pg_query/include/postgres/pg_config_os.h +8 -0
  232. data/ext/pg_query/include/{pg_getopt.h → postgres/pg_getopt.h} +1 -1
  233. data/ext/pg_query/include/{pg_trace.h → postgres/pg_trace.h} +1 -1
  234. data/ext/pg_query/include/{pgstat.h → postgres/pgstat.h} +173 -94
  235. data/ext/pg_query/include/{pgtime.h → postgres/pgtime.h} +3 -3
  236. data/ext/pg_query/include/{pl_gram.h → postgres/pl_gram.h} +66 -64
  237. data/ext/pg_query/include/{pl_reserved_kwlist.h → postgres/pl_reserved_kwlist.h} +1 -1
  238. data/ext/pg_query/include/{pl_reserved_kwlist_d.h → postgres/pl_reserved_kwlist_d.h} +1 -1
  239. data/ext/pg_query/include/{pl_unreserved_kwlist.h → postgres/pl_unreserved_kwlist.h} +2 -1
  240. data/ext/pg_query/include/{pl_unreserved_kwlist_d.h → postgres/pl_unreserved_kwlist_d.h} +48 -46
  241. data/ext/pg_query/include/{plpgsql.h → postgres/plpgsql.h} +28 -33
  242. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-arm.h +3 -3
  243. data/ext/pg_query/include/postgres/port/atomics/arch-hppa.h +17 -0
  244. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-ppc.h +21 -21
  245. data/ext/pg_query/include/{port → postgres/port}/atomics/arch-x86.h +2 -2
  246. data/ext/pg_query/include/{port → postgres/port}/atomics/fallback.h +3 -3
  247. data/ext/pg_query/include/{port → postgres/port}/atomics/generic-gcc.h +1 -1
  248. data/ext/pg_query/include/postgres/port/atomics/generic-msvc.h +101 -0
  249. data/ext/pg_query/include/postgres/port/atomics/generic-sunpro.h +106 -0
  250. data/ext/pg_query/include/{port → postgres/port}/atomics/generic.h +1 -1
  251. data/ext/pg_query/include/{port → postgres/port}/atomics.h +2 -7
  252. data/ext/pg_query/include/{port → postgres/port}/pg_bitutils.h +62 -25
  253. data/ext/pg_query/include/{port → postgres/port}/pg_bswap.h +1 -1
  254. data/ext/pg_query/include/{port → postgres/port}/pg_crc32c.h +1 -1
  255. data/ext/pg_query/include/postgres/port/simd.h +375 -0
  256. data/ext/pg_query/include/postgres/port/win32/arpa/inet.h +3 -0
  257. data/ext/pg_query/include/postgres/port/win32/dlfcn.h +1 -0
  258. data/ext/pg_query/include/postgres/port/win32/grp.h +1 -0
  259. data/ext/pg_query/include/postgres/port/win32/netdb.h +7 -0
  260. data/ext/pg_query/include/postgres/port/win32/netinet/in.h +3 -0
  261. data/ext/pg_query/include/postgres/port/win32/netinet/tcp.h +7 -0
  262. data/ext/pg_query/include/postgres/port/win32/pwd.h +3 -0
  263. data/ext/pg_query/include/postgres/port/win32/sys/resource.h +20 -0
  264. data/ext/pg_query/include/postgres/port/win32/sys/select.h +3 -0
  265. data/ext/pg_query/include/postgres/port/win32/sys/socket.h +26 -0
  266. data/ext/pg_query/include/postgres/port/win32/sys/un.h +17 -0
  267. data/ext/pg_query/include/postgres/port/win32/sys/wait.h +3 -0
  268. data/ext/pg_query/include/postgres/port/win32.h +59 -0
  269. data/ext/pg_query/include/postgres/port/win32_msvc/dirent.h +34 -0
  270. data/ext/pg_query/include/postgres/port/win32_msvc/sys/file.h +1 -0
  271. data/ext/pg_query/include/postgres/port/win32_msvc/sys/param.h +1 -0
  272. data/ext/pg_query/include/postgres/port/win32_msvc/sys/time.h +1 -0
  273. data/ext/pg_query/include/postgres/port/win32_msvc/unistd.h +9 -0
  274. data/ext/pg_query/include/postgres/port/win32_msvc/utime.h +3 -0
  275. data/ext/pg_query/include/postgres/port/win32_port.h +594 -0
  276. data/ext/pg_query/include/{port.h → postgres/port.h} +42 -75
  277. data/ext/pg_query/include/postgres/portability/instr_time.h +197 -0
  278. data/ext/pg_query/include/postgres/postgres.h +579 -0
  279. data/ext/pg_query/include/{postgres_ext.h → postgres/postgres_ext.h} +0 -1
  280. data/ext/pg_query/include/{postmaster → postgres/postmaster}/autovacuum.h +1 -4
  281. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker.h +2 -2
  282. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgworker_internals.h +1 -1
  283. data/ext/pg_query/include/{postmaster → postgres/postmaster}/bgwriter.h +2 -2
  284. data/ext/pg_query/include/{postmaster → postgres/postmaster}/interrupt.h +1 -1
  285. data/ext/pg_query/include/postgres/postmaster/pgarch.h +36 -0
  286. data/ext/pg_query/include/{postmaster → postgres/postmaster}/postmaster.h +6 -3
  287. data/ext/pg_query/include/{postmaster → postgres/postmaster}/startup.h +3 -1
  288. data/ext/pg_query/include/{postmaster → postgres/postmaster}/syslogger.h +2 -2
  289. data/ext/pg_query/include/{postmaster → postgres/postmaster}/walwriter.h +3 -1
  290. data/ext/pg_query/include/{regex → postgres/regex}/regex.h +9 -6
  291. data/ext/pg_query/include/{replication → postgres/replication}/logicallauncher.h +6 -1
  292. data/ext/pg_query/include/{replication → postgres/replication}/logicalproto.h +30 -10
  293. data/ext/pg_query/include/postgres/replication/logicalworker.h +32 -0
  294. data/ext/pg_query/include/{replication → postgres/replication}/origin.h +4 -4
  295. data/ext/pg_query/include/{replication → postgres/replication}/reorderbuffer.h +113 -45
  296. data/ext/pg_query/include/{replication → postgres/replication}/slot.h +25 -6
  297. data/ext/pg_query/include/{replication → postgres/replication}/syncrep.h +2 -8
  298. data/ext/pg_query/include/{replication → postgres/replication}/walreceiver.h +15 -9
  299. data/ext/pg_query/include/{replication → postgres/replication}/walsender.h +13 -13
  300. data/ext/pg_query/include/{rewrite → postgres/rewrite}/prs2lock.h +1 -1
  301. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteHandler.h +1 -4
  302. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteManip.h +11 -2
  303. data/ext/pg_query/include/{rewrite → postgres/rewrite}/rewriteSupport.h +1 -1
  304. data/ext/pg_query/include/{storage → postgres/storage}/backendid.h +1 -1
  305. data/ext/pg_query/include/{storage → postgres/storage}/block.h +24 -31
  306. data/ext/pg_query/include/{storage → postgres/storage}/buf.h +1 -1
  307. data/ext/pg_query/include/{storage → postgres/storage}/bufmgr.h +183 -87
  308. data/ext/pg_query/include/{storage → postgres/storage}/bufpage.h +146 -93
  309. data/ext/pg_query/include/{storage → postgres/storage}/condition_variable.h +2 -2
  310. data/ext/pg_query/include/{storage → postgres/storage}/dsm.h +3 -6
  311. data/ext/pg_query/include/{storage → postgres/storage}/dsm_impl.h +4 -1
  312. data/ext/pg_query/include/{storage → postgres/storage}/fd.h +24 -20
  313. data/ext/pg_query/include/{storage → postgres/storage}/fileset.h +1 -1
  314. data/ext/pg_query/include/{storage → postgres/storage}/ipc.h +2 -2
  315. data/ext/pg_query/include/{storage → postgres/storage}/item.h +1 -1
  316. data/ext/pg_query/include/{storage → postgres/storage}/itemid.h +1 -1
  317. data/ext/pg_query/include/{storage → postgres/storage}/itemptr.h +94 -57
  318. data/ext/pg_query/include/{storage → postgres/storage}/large_object.h +1 -1
  319. data/ext/pg_query/include/{storage → postgres/storage}/latch.h +9 -1
  320. data/ext/pg_query/include/{storage → postgres/storage}/lmgr.h +6 -1
  321. data/ext/pg_query/include/{storage → postgres/storage}/lock.h +21 -13
  322. data/ext/pg_query/include/{storage → postgres/storage}/lockdefs.h +3 -3
  323. data/ext/pg_query/include/{storage → postgres/storage}/lwlock.h +16 -2
  324. data/ext/pg_query/include/{storage → postgres/storage}/off.h +1 -1
  325. data/ext/pg_query/include/{storage → postgres/storage}/pg_sema.h +1 -1
  326. data/ext/pg_query/include/{storage → postgres/storage}/pg_shmem.h +1 -1
  327. data/ext/pg_query/include/{storage → postgres/storage}/pmsignal.h +1 -1
  328. data/ext/pg_query/include/{storage → postgres/storage}/predicate.h +2 -2
  329. data/ext/pg_query/include/{storage → postgres/storage}/proc.h +22 -17
  330. data/ext/pg_query/include/{storage → postgres/storage}/procarray.h +3 -2
  331. data/ext/pg_query/include/{storage → postgres/storage}/proclist_types.h +1 -1
  332. data/ext/pg_query/include/{storage → postgres/storage}/procsignal.h +3 -1
  333. data/ext/pg_query/include/postgres/storage/relfilelocator.h +99 -0
  334. data/ext/pg_query/include/{storage → postgres/storage}/s_lock.h +66 -309
  335. data/ext/pg_query/include/{storage → postgres/storage}/sharedfileset.h +1 -1
  336. data/ext/pg_query/include/{storage → postgres/storage}/shm_mq.h +1 -1
  337. data/ext/pg_query/include/{storage → postgres/storage}/shm_toc.h +1 -1
  338. data/ext/pg_query/include/{storage → postgres/storage}/shmem.h +1 -23
  339. data/ext/pg_query/include/{storage → postgres/storage}/sinval.h +3 -3
  340. data/ext/pg_query/include/{storage → postgres/storage}/sinvaladt.h +4 -2
  341. data/ext/pg_query/include/{storage → postgres/storage}/smgr.h +12 -10
  342. data/ext/pg_query/include/{storage → postgres/storage}/spin.h +1 -1
  343. data/ext/pg_query/include/{storage → postgres/storage}/standby.h +9 -8
  344. data/ext/pg_query/include/{storage → postgres/storage}/standbydefs.h +1 -1
  345. data/ext/pg_query/include/{storage → postgres/storage}/sync.h +3 -3
  346. data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtag.h +7 -2
  347. data/ext/pg_query/include/{tcop → postgres/tcop}/cmdtaglist.h +1 -1
  348. data/ext/pg_query/include/{tcop → postgres/tcop}/deparse_utility.h +1 -1
  349. data/ext/pg_query/include/{tcop → postgres/tcop}/dest.h +1 -3
  350. data/ext/pg_query/include/{tcop → postgres/tcop}/fastpath.h +1 -1
  351. data/ext/pg_query/include/{tcop → postgres/tcop}/pquery.h +1 -1
  352. data/ext/pg_query/include/{tcop → postgres/tcop}/tcopprot.h +3 -6
  353. data/ext/pg_query/include/{tcop → postgres/tcop}/utility.h +1 -1
  354. data/ext/pg_query/include/{tsearch → postgres/tsearch}/ts_cache.h +2 -4
  355. data/ext/pg_query/include/{utils → postgres/utils}/acl.h +26 -81
  356. data/ext/pg_query/include/{utils → postgres/utils}/aclchk_internal.h +1 -1
  357. data/ext/pg_query/include/{utils → postgres/utils}/array.h +19 -1
  358. data/ext/pg_query/include/{utils → postgres/utils}/backend_progress.h +2 -1
  359. data/ext/pg_query/include/{utils → postgres/utils}/backend_status.h +24 -3
  360. data/ext/pg_query/include/{utils → postgres/utils}/builtins.h +15 -6
  361. data/ext/pg_query/include/{utils → postgres/utils}/bytea.h +1 -1
  362. data/ext/pg_query/include/{utils → postgres/utils}/catcache.h +1 -1
  363. data/ext/pg_query/include/{utils → postgres/utils}/date.h +37 -9
  364. data/ext/pg_query/include/{utils → postgres/utils}/datetime.h +41 -21
  365. data/ext/pg_query/include/{utils → postgres/utils}/datum.h +1 -1
  366. data/ext/pg_query/include/{utils → postgres/utils}/dsa.h +5 -1
  367. data/ext/pg_query/include/{utils → postgres/utils}/elog.h +104 -29
  368. data/ext/pg_query/include/{utils → postgres/utils}/expandeddatum.h +14 -3
  369. data/ext/pg_query/include/{utils → postgres/utils}/expandedrecord.h +14 -4
  370. data/ext/pg_query/include/{utils → postgres/utils}/float.h +7 -6
  371. data/ext/pg_query/include/{utils → postgres/utils}/fmgroids.h +54 -1
  372. data/ext/pg_query/include/{utils → postgres/utils}/fmgrprotos.h +45 -3
  373. data/ext/pg_query/include/{utils → postgres/utils}/fmgrtab.h +1 -1
  374. data/ext/pg_query/include/{utils → postgres/utils}/guc.h +59 -86
  375. data/ext/pg_query/include/postgres/utils/guc_hooks.h +163 -0
  376. data/ext/pg_query/include/{utils → postgres/utils}/guc_tables.h +49 -3
  377. data/ext/pg_query/include/{utils → postgres/utils}/hsearch.h +1 -1
  378. data/ext/pg_query/include/{utils → postgres/utils}/inval.h +3 -3
  379. data/ext/pg_query/include/postgres/utils/logtape.h +77 -0
  380. data/ext/pg_query/include/{utils → postgres/utils}/lsyscache.h +5 -1
  381. data/ext/pg_query/include/{utils → postgres/utils}/memdebug.h +1 -1
  382. data/ext/pg_query/include/{utils → postgres/utils}/memutils.h +7 -51
  383. data/ext/pg_query/include/postgres/utils/memutils_internal.h +136 -0
  384. data/ext/pg_query/include/postgres/utils/memutils_memorychunk.h +237 -0
  385. data/ext/pg_query/include/{utils → postgres/utils}/numeric.h +20 -5
  386. data/ext/pg_query/include/{utils → postgres/utils}/palloc.h +9 -2
  387. data/ext/pg_query/include/{utils → postgres/utils}/partcache.h +3 -2
  388. data/ext/pg_query/include/{utils → postgres/utils}/pg_locale.h +22 -14
  389. data/ext/pg_query/include/{utils → postgres/utils}/pgstat_internal.h +37 -7
  390. data/ext/pg_query/include/{utils → postgres/utils}/plancache.h +1 -1
  391. data/ext/pg_query/include/{utils → postgres/utils}/portal.h +1 -1
  392. data/ext/pg_query/include/{utils → postgres/utils}/probes.h +6 -6
  393. data/ext/pg_query/include/postgres/utils/ps_status.h +47 -0
  394. data/ext/pg_query/include/{utils → postgres/utils}/queryenvironment.h +1 -1
  395. data/ext/pg_query/include/{utils → postgres/utils}/regproc.h +3 -3
  396. data/ext/pg_query/include/{utils → postgres/utils}/rel.h +60 -43
  397. data/ext/pg_query/include/{utils → postgres/utils}/relcache.h +13 -8
  398. data/ext/pg_query/include/{utils → postgres/utils}/reltrigger.h +1 -1
  399. data/ext/pg_query/include/{utils → postgres/utils}/resowner.h +1 -1
  400. data/ext/pg_query/include/{utils → postgres/utils}/ruleutils.h +6 -1
  401. data/ext/pg_query/include/{utils → postgres/utils}/sharedtuplestore.h +1 -1
  402. data/ext/pg_query/include/{utils → postgres/utils}/snapmgr.h +4 -2
  403. data/ext/pg_query/include/{utils → postgres/utils}/snapshot.h +1 -1
  404. data/ext/pg_query/include/{utils → postgres/utils}/sortsupport.h +2 -2
  405. data/ext/pg_query/include/{utils → postgres/utils}/syscache.h +4 -1
  406. data/ext/pg_query/include/{utils → postgres/utils}/timeout.h +1 -1
  407. data/ext/pg_query/include/{utils → postgres/utils}/timestamp.h +41 -11
  408. data/ext/pg_query/include/{utils → postgres/utils}/tuplesort.h +189 -35
  409. data/ext/pg_query/include/{utils → postgres/utils}/tuplestore.h +1 -1
  410. data/ext/pg_query/include/{utils → postgres/utils}/typcache.h +1 -1
  411. data/ext/pg_query/include/{utils → postgres/utils}/varlena.h +13 -1
  412. data/ext/pg_query/include/{utils → postgres/utils}/wait_event.h +9 -4
  413. data/ext/pg_query/include/{utils → postgres/utils}/xml.h +15 -5
  414. data/ext/pg_query/include/{postgres.h → postgres/varatt.h} +7 -457
  415. data/ext/pg_query/include/protobuf/pg_query.pb-c.h +6186 -5585
  416. data/ext/pg_query/include/protobuf/pg_query.pb.h +112443 -91222
  417. data/ext/pg_query/pg_query.c +10 -1
  418. data/ext/pg_query/pg_query.pb-c.c +19755 -17757
  419. data/ext/pg_query/pg_query_deparse.c +1 -10635
  420. data/ext/pg_query/pg_query_fingerprint.c +12 -8
  421. data/ext/pg_query/pg_query_fingerprint.h +1 -1
  422. data/ext/pg_query/pg_query_internal.h +1 -1
  423. data/ext/pg_query/pg_query_json_plpgsql.c +1 -0
  424. data/ext/pg_query/pg_query_normalize.c +1 -1
  425. data/ext/pg_query/pg_query_outfuncs_json.c +6 -0
  426. data/ext/pg_query/pg_query_outfuncs_protobuf.c +3 -2
  427. data/ext/pg_query/pg_query_parse.c +47 -5
  428. data/ext/pg_query/pg_query_parse_plpgsql.c +7 -5
  429. data/ext/pg_query/pg_query_readfuncs_protobuf.c +1 -0
  430. data/ext/pg_query/pg_query_ruby.c +5 -0
  431. data/ext/pg_query/pg_query_ruby_freebsd.sym +2 -0
  432. data/ext/pg_query/pg_query_scan.c +1 -1
  433. data/ext/pg_query/pg_query_split.c +3 -3
  434. data/ext/pg_query/postgres_deparse.c +11067 -0
  435. data/ext/pg_query/postgres_deparse.h +9 -0
  436. data/ext/pg_query/src_backend_catalog_namespace.c +7 -2
  437. data/ext/pg_query/src_backend_catalog_pg_proc.c +1 -1
  438. data/ext/pg_query/src_backend_commands_define.c +1 -1
  439. data/ext/pg_query/src_backend_nodes_bitmapset.c +11 -70
  440. data/ext/pg_query/src_backend_nodes_copyfuncs.c +96 -6202
  441. data/ext/pg_query/src_backend_nodes_equalfuncs.c +95 -4068
  442. data/ext/pg_query/src_backend_nodes_extensible.c +6 -29
  443. data/ext/pg_query/src_backend_nodes_list.c +14 -2
  444. data/ext/pg_query/src_backend_nodes_makefuncs.c +95 -1
  445. data/ext/pg_query/src_backend_nodes_nodeFuncs.c +283 -132
  446. data/ext/pg_query/src_backend_nodes_nodes.c +38 -0
  447. data/ext/pg_query/src_backend_nodes_value.c +1 -1
  448. data/ext/pg_query/src_backend_parser_gram.c +33208 -31806
  449. data/ext/pg_query/src_backend_parser_parser.c +28 -2
  450. data/ext/pg_query/src_backend_parser_scan.c +4318 -3329
  451. data/ext/pg_query/src_backend_parser_scansup.c +1 -1
  452. data/ext/pg_query/src_backend_storage_ipc_ipc.c +1 -1
  453. data/ext/pg_query/src_backend_tcop_postgres.c +66 -87
  454. data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +1 -1
  455. data/ext/pg_query/src_backend_utils_adt_datum.c +5 -7
  456. data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
  457. data/ext/pg_query/src_backend_utils_adt_format_type.c +1 -1
  458. data/ext/pg_query/src_backend_utils_adt_numutils.c +489 -0
  459. data/ext/pg_query/src_backend_utils_adt_ruleutils.c +79 -5
  460. data/ext/pg_query/src_backend_utils_error_assert.c +4 -7
  461. data/ext/pg_query/src_backend_utils_error_elog.c +371 -249
  462. data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +33 -1
  463. data/ext/pg_query/src_backend_utils_init_globals.c +6 -3
  464. data/ext/pg_query/src_backend_utils_mb_mbutils.c +21 -67
  465. data/ext/pg_query/src_backend_utils_misc_guc_tables.c +492 -0
  466. data/ext/pg_query/src_backend_utils_mmgr_alignedalloc.c +163 -0
  467. data/ext/pg_query/src_backend_utils_mmgr_aset.c +449 -312
  468. data/ext/pg_query/src_backend_utils_mmgr_generation.c +1039 -0
  469. data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +398 -49
  470. data/ext/pg_query/src_backend_utils_mmgr_slab.c +1021 -0
  471. data/ext/pg_query/src_common_encnames.c +4 -1
  472. data/ext/pg_query/src_common_hashfn.c +1 -1
  473. data/ext/pg_query/src_common_keywords.c +1 -1
  474. data/ext/pg_query/src_common_kwlist_d.h +534 -510
  475. data/ext/pg_query/src_common_kwlookup.c +1 -1
  476. data/ext/pg_query/src_common_psprintf.c +1 -1
  477. data/ext/pg_query/src_common_stringinfo.c +4 -4
  478. data/ext/pg_query/src_common_wchar.c +9 -8
  479. data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1 -1
  480. data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +3 -1
  481. data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +661 -694
  482. data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
  483. data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +1 -1
  484. data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +1 -1
  485. data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +48 -46
  486. data/ext/pg_query/src_port_pg_bitutils.c +79 -5
  487. data/ext/pg_query/src_port_pgstrcasecmp.c +29 -1
  488. data/ext/pg_query/src_port_snprintf.c +6 -10
  489. data/ext/pg_query/src_port_strerror.c +1 -1
  490. data/ext/pg_query/src_port_strlcpy.c +79 -0
  491. data/lib/pg_query/fingerprint.rb +2 -3
  492. data/lib/pg_query/node.rb +16 -11
  493. data/lib/pg_query/parse.rb +1 -1
  494. data/lib/pg_query/pg_query_pb.rb +166 -3191
  495. data/lib/pg_query/treewalker.rb +23 -5
  496. data/lib/pg_query/version.rb +1 -1
  497. metadata +432 -380
  498. data/ext/pg_query/guc-file.c +0 -0
  499. data/ext/pg_query/include/catalog/pg_parameter_acl.h +0 -60
  500. data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +0 -34
  501. data/ext/pg_query/include/commands/variable.h +0 -38
  502. data/ext/pg_query/include/common/ip.h +0 -31
  503. data/ext/pg_query/include/getaddrinfo.h +0 -162
  504. data/ext/pg_query/include/kwlist_d.h +0 -1095
  505. data/ext/pg_query/include/parser/gram.h +0 -1101
  506. data/ext/pg_query/include/pg_config_os.h +0 -8
  507. data/ext/pg_query/include/portability/instr_time.h +0 -256
  508. data/ext/pg_query/include/postmaster/auxprocess.h +0 -20
  509. data/ext/pg_query/include/postmaster/fork_process.h +0 -17
  510. data/ext/pg_query/include/postmaster/pgarch.h +0 -73
  511. data/ext/pg_query/include/replication/logicalworker.h +0 -19
  512. data/ext/pg_query/include/storage/relfilenode.h +0 -99
  513. data/ext/pg_query/include/utils/dynahash.h +0 -20
  514. data/ext/pg_query/include/utils/pg_lsn.h +0 -29
  515. data/ext/pg_query/include/utils/pidfile.h +0 -56
  516. data/ext/pg_query/include/utils/ps_status.h +0 -25
  517. data/ext/pg_query/include/utils/rls.h +0 -50
  518. data/ext/pg_query/include/utils/tzparser.h +0 -39
  519. data/ext/pg_query/src_backend_postmaster_postmaster.c +0 -2201
  520. data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +0 -371
  521. data/ext/pg_query/src_backend_utils_hash_dynahash.c +0 -1116
  522. data/ext/pg_query/src_backend_utils_misc_guc.c +0 -1993
  523. data/ext/pg_query/src_common_pg_prng.c +0 -152
  524. data/ext/pg_query/src_common_string.c +0 -92
  525. data/ext/pg_query/src_port_pgsleep.c +0 -69
  526. data/ext/pg_query/src_port_strnlen.c +0 -39
  527. /data/ext/pg_query/include/{access → postgres/access}/rmgr.h +0 -0
  528. /data/ext/pg_query/include/{pg_config_ext.h → postgres/pg_config_ext.h} +0 -0
  529. /data/ext/pg_query/include/{plerrcodes.h → postgres/plerrcodes.h} +0 -0
  530. /data/ext/pg_query/include/{storage → postgres/storage}/lwlocknames.h +0 -0
  531. /data/ext/pg_query/include/{utils → postgres/utils}/errcodes.h +0 -0
@@ -3,6 +3,7 @@
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 IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg);
6
7
  static Var * _readVar(OUT_TYPE(Var, Var) msg);
7
8
  static Param * _readParam(OUT_TYPE(Param, Param) msg);
8
9
  static Aggref * _readAggref(OUT_TYPE(Aggref, Aggref) msg);
@@ -36,6 +37,11 @@ static CoalesceExpr * _readCoalesceExpr(OUT_TYPE(CoalesceExpr, CoalesceExpr) msg
36
37
  static MinMaxExpr * _readMinMaxExpr(OUT_TYPE(MinMaxExpr, MinMaxExpr) msg);
37
38
  static SQLValueFunction * _readSQLValueFunction(OUT_TYPE(SQLValueFunction, SQLValueFunction) msg);
38
39
  static XmlExpr * _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg);
40
+ static JsonFormat * _readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg);
41
+ static JsonReturning * _readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg);
42
+ static JsonValueExpr * _readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg);
43
+ static JsonConstructorExpr * _readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg);
44
+ static JsonIsPredicate * _readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg);
39
45
  static NullTest * _readNullTest(OUT_TYPE(NullTest, NullTest) msg);
40
46
  static BooleanTest * _readBooleanTest(OUT_TYPE(BooleanTest, BooleanTest) msg);
41
47
  static CoerceToDomain * _readCoerceToDomain(OUT_TYPE(CoerceToDomain, CoerceToDomain) msg);
@@ -49,186 +55,194 @@ static RangeTblRef * _readRangeTblRef(OUT_TYPE(RangeTblRef, RangeTblRef) msg);
49
55
  static JoinExpr * _readJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) msg);
50
56
  static FromExpr * _readFromExpr(OUT_TYPE(FromExpr, FromExpr) msg);
51
57
  static OnConflictExpr * _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg);
52
- static IntoClause * _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg);
58
+ static Query * _readQuery(OUT_TYPE(Query, Query) msg);
59
+ static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg);
60
+ static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg);
61
+ static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg);
62
+ static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg);
63
+ static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg);
64
+ static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg);
65
+ static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg);
66
+ static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg);
67
+ static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg);
68
+ static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg);
69
+ static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg);
70
+ static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg);
71
+ static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg);
72
+ static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg);
73
+ static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg);
74
+ static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg);
75
+ static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg);
76
+ static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg);
77
+ static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg);
78
+ static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg);
79
+ static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg);
80
+ static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg);
81
+ static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg);
82
+ static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg);
83
+ static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg);
84
+ static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg);
85
+ static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg);
86
+ static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg);
87
+ static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg);
88
+ static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg);
89
+ static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg);
90
+ static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg);
91
+ static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg);
92
+ static RTEPermissionInfo * _readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg);
93
+ static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg);
94
+ static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg);
95
+ static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg);
96
+ static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg);
97
+ static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg);
98
+ static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg);
99
+ static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg);
100
+ static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg);
101
+ static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg);
102
+ static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg);
103
+ static CTESearchClause * _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg);
104
+ static CTECycleClause * _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg);
105
+ static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg);
106
+ static MergeWhenClause * _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg);
53
107
  static MergeAction * _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg);
108
+ static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg);
109
+ static JsonOutput * _readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg);
110
+ static JsonKeyValue * _readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg);
111
+ static JsonObjectConstructor * _readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg);
112
+ static JsonArrayConstructor * _readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg);
113
+ static JsonArrayQueryConstructor * _readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg);
114
+ static JsonAggConstructor * _readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg);
115
+ static JsonObjectAgg * _readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg);
116
+ static JsonArrayAgg * _readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg);
54
117
  static RawStmt * _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg);
55
- static Query * _readQuery(OUT_TYPE(Query, Query) msg);
56
118
  static InsertStmt * _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg);
57
119
  static DeleteStmt * _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg);
58
120
  static UpdateStmt * _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg);
59
121
  static MergeStmt * _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg);
60
122
  static SelectStmt * _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg);
123
+ static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg);
61
124
  static ReturnStmt * _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg);
62
125
  static PLAssignStmt * _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg);
126
+ static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg);
63
127
  static AlterTableStmt * _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg);
128
+ static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg);
64
129
  static AlterTableCmd * _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg);
130
+ static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg);
65
131
  static AlterDomainStmt * _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg);
66
- static SetOperationStmt * _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg);
67
132
  static GrantStmt * _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg);
133
+ static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg);
134
+ static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg);
68
135
  static GrantRoleStmt * _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg);
69
136
  static AlterDefaultPrivilegesStmt * _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg);
70
- static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg);
71
- static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg);
72
137
  static CopyStmt * _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg);
138
+ static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg);
139
+ static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg);
73
140
  static CreateStmt * _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg);
141
+ static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg);
142
+ static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg);
143
+ static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg);
144
+ static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg);
145
+ static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg);
146
+ static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg);
147
+ static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg);
148
+ static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg);
149
+ static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg);
150
+ static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg);
151
+ static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg);
152
+ static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg);
153
+ static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg);
154
+ static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg);
155
+ static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg);
156
+ static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg);
157
+ static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg);
158
+ static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg);
159
+ static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg);
160
+ static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg);
161
+ static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg);
162
+ static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg);
163
+ static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg);
164
+ static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg);
165
+ static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg);
166
+ static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg);
167
+ static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg);
168
+ static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg);
169
+ static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg);
170
+ static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg);
74
171
  static DefineStmt * _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg);
172
+ static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg);
173
+ static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg);
174
+ static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg);
175
+ static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg);
176
+ static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg);
75
177
  static DropStmt * _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg);
76
178
  static TruncateStmt * _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg);
77
179
  static CommentStmt * _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg);
180
+ static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg);
181
+ static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg);
182
+ static ClosePortalStmt * _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg);
78
183
  static FetchStmt * _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg);
79
184
  static IndexStmt * _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg);
185
+ static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg);
186
+ static StatsElem * _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg);
187
+ static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg);
80
188
  static CreateFunctionStmt * _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg);
189
+ static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg);
81
190
  static AlterFunctionStmt * _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg);
82
191
  static DoStmt * _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg);
192
+ static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg);
193
+ static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg);
194
+ static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg);
83
195
  static RenameStmt * _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg);
196
+ static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg);
197
+ static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg);
198
+ static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg);
199
+ static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg);
200
+ static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg);
84
201
  static RuleStmt * _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg);
85
202
  static NotifyStmt * _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg);
86
203
  static ListenStmt * _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg);
87
204
  static UnlistenStmt * _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg);
88
205
  static TransactionStmt * _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg);
206
+ static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg);
207
+ static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg);
208
+ static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg);
209
+ static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg);
89
210
  static ViewStmt * _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg);
90
211
  static LoadStmt * _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg);
91
- static CreateDomainStmt * _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg);
92
212
  static CreatedbStmt * _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg);
213
+ static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg);
214
+ static AlterDatabaseRefreshCollStmt * _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg);
215
+ static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg);
93
216
  static DropdbStmt * _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg);
217
+ static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg);
218
+ static ClusterStmt * _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg);
94
219
  static VacuumStmt * _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg);
220
+ static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg);
95
221
  static ExplainStmt * _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg);
96
222
  static CreateTableAsStmt * _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg);
97
- static CreateSeqStmt * _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg);
98
- static AlterSeqStmt * _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg);
99
- static VariableSetStmt * _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg);
100
- static VariableShowStmt * _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg);
223
+ static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg);
224
+ static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg);
101
225
  static DiscardStmt * _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg);
102
- static CreateTrigStmt * _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg);
103
- static CreatePLangStmt * _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg);
104
- static CreateRoleStmt * _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg);
105
- static AlterRoleStmt * _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg);
106
- static DropRoleStmt * _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg);
107
226
  static LockStmt * _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg);
108
227
  static ConstraintsSetStmt * _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg);
109
228
  static ReindexStmt * _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg);
110
- static CheckPointStmt * _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg);
111
- static CreateSchemaStmt * _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg);
112
- static AlterDatabaseStmt * _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg);
113
- static AlterDatabaseRefreshCollStmt * _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg);
114
- static AlterDatabaseSetStmt * _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg);
115
- static AlterRoleSetStmt * _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg);
116
229
  static CreateConversionStmt * _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg);
117
230
  static CreateCastStmt * _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg);
118
- static CreateOpClassStmt * _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg);
119
- static CreateOpFamilyStmt * _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg);
120
- static AlterOpFamilyStmt * _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg);
231
+ static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg);
121
232
  static PrepareStmt * _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg);
122
233
  static ExecuteStmt * _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg);
123
234
  static DeallocateStmt * _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg);
124
- static DeclareCursorStmt * _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg);
125
- static CreateTableSpaceStmt * _readCreateTableSpaceStmt(OUT_TYPE(CreateTableSpaceStmt, CreateTableSpaceStmt) msg);
126
- static DropTableSpaceStmt * _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg);
127
- static AlterObjectDependsStmt * _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg);
128
- static AlterObjectSchemaStmt * _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg);
129
- static AlterOwnerStmt * _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg);
130
- static AlterOperatorStmt * _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg);
131
- static AlterTypeStmt * _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg);
132
235
  static DropOwnedStmt * _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg);
133
236
  static ReassignOwnedStmt * _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg);
134
- static CompositeTypeStmt * _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg);
135
- static CreateEnumStmt * _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg);
136
- static CreateRangeStmt * _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg);
137
- static AlterEnumStmt * _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg);
138
237
  static AlterTSDictionaryStmt * _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg);
139
238
  static AlterTSConfigurationStmt * _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg);
140
- static CreateFdwStmt * _readCreateFdwStmt(OUT_TYPE(CreateFdwStmt, CreateFdwStmt) msg);
141
- static AlterFdwStmt * _readAlterFdwStmt(OUT_TYPE(AlterFdwStmt, AlterFdwStmt) msg);
142
- static CreateForeignServerStmt * _readCreateForeignServerStmt(OUT_TYPE(CreateForeignServerStmt, CreateForeignServerStmt) msg);
143
- static AlterForeignServerStmt * _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerStmt) msg);
144
- static CreateUserMappingStmt * _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg);
145
- static AlterUserMappingStmt * _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg);
146
- static DropUserMappingStmt * _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg);
147
- static AlterTableSpaceOptionsStmt * _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg);
148
- static AlterTableMoveAllStmt * _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg);
149
- static SecLabelStmt * _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg);
150
- static CreateForeignTableStmt * _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg);
151
- static ImportForeignSchemaStmt * _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSchemaStmt) msg);
152
- static CreateExtensionStmt * _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg);
153
- static AlterExtensionStmt * _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg);
154
- static AlterExtensionContentsStmt * _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg);
155
- static CreateEventTrigStmt * _readCreateEventTrigStmt(OUT_TYPE(CreateEventTrigStmt, CreateEventTrigStmt) msg);
156
- static AlterEventTrigStmt * _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg);
157
- static RefreshMatViewStmt * _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg);
158
- static ReplicaIdentityStmt * _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg);
159
- static AlterSystemStmt * _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg);
160
- static CreatePolicyStmt * _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg);
161
- static AlterPolicyStmt * _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg);
162
- static CreateTransformStmt * _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg);
163
- static CreateAmStmt * _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg);
239
+ static PublicationTable * _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg);
240
+ static PublicationObjSpec * _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg);
164
241
  static CreatePublicationStmt * _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg);
165
242
  static AlterPublicationStmt * _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg);
166
243
  static CreateSubscriptionStmt * _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg);
167
244
  static AlterSubscriptionStmt * _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg);
168
245
  static DropSubscriptionStmt * _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg);
169
- static CreateStatsStmt * _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg);
170
- static AlterCollationStmt * _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg);
171
- static CallStmt * _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg);
172
- static AlterStatsStmt * _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg);
173
- static A_Expr * _readAExpr(OUT_TYPE(A_Expr, AExpr) msg);
174
- static ColumnRef * _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg);
175
- static ParamRef * _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg);
176
- static FuncCall * _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg);
177
- static A_Star * _readAStar(OUT_TYPE(A_Star, AStar) msg);
178
- static A_Indices * _readAIndices(OUT_TYPE(A_Indices, AIndices) msg);
179
- static A_Indirection * _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg);
180
- static A_ArrayExpr * _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg);
181
- static ResTarget * _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg);
182
- static MultiAssignRef * _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg);
183
- static TypeCast * _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg);
184
- static CollateClause * _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg);
185
- static SortBy * _readSortBy(OUT_TYPE(SortBy, SortBy) msg);
186
- static WindowDef * _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg);
187
- static RangeSubselect * _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg);
188
- static RangeFunction * _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg);
189
- static RangeTableSample * _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg);
190
- static RangeTableFunc * _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg);
191
- static RangeTableFuncCol * _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg);
192
- static TypeName * _readTypeName(OUT_TYPE(TypeName, TypeName) msg);
193
- static ColumnDef * _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg);
194
- static IndexElem * _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg);
195
- static StatsElem * _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg);
196
- static Constraint * _readConstraint(OUT_TYPE(Constraint, Constraint) msg);
197
- static DefElem * _readDefElem(OUT_TYPE(DefElem, DefElem) msg);
198
- static RangeTblEntry * _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg);
199
- static RangeTblFunction * _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg);
200
- static TableSampleClause * _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg);
201
- static WithCheckOption * _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg);
202
- static SortGroupClause * _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg);
203
- static GroupingSet * _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg);
204
- static WindowClause * _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg);
205
- static ObjectWithArgs * _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg);
206
- static AccessPriv * _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg);
207
- static CreateOpClassItem * _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg);
208
- static TableLikeClause * _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg);
209
- static FunctionParameter * _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg);
210
- static LockingClause * _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg);
211
- static RowMarkClause * _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg);
212
- static XmlSerialize * _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg);
213
- static WithClause * _readWithClause(OUT_TYPE(WithClause, WithClause) msg);
214
- static InferClause * _readInferClause(OUT_TYPE(InferClause, InferClause) msg);
215
- static OnConflictClause * _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg);
216
- static CTESearchClause * _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg);
217
- static CTECycleClause * _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg);
218
- static CommonTableExpr * _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg);
219
- static MergeWhenClause * _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg);
220
- static RoleSpec * _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg);
221
- static TriggerTransition * _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg);
222
- static PartitionElem * _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg);
223
- static PartitionSpec * _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg);
224
- static PartitionBoundSpec * _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg);
225
- static PartitionRangeDatum * _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg);
226
- static PartitionCmd * _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg);
227
- static VacuumRelation * _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg);
228
- static PublicationObjSpec * _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg);
229
- static PublicationTable * _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg);
230
- static InlineCodeBlock * _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg);
231
- static CallContext * _readCallContext(OUT_TYPE(CallContext, CallContext) msg);
232
246
 
233
247
 
234
248
  static Alias *
@@ -274,18 +288,32 @@ _readTableFunc(OUT_TYPE(TableFunc, TableFunc) msg)
274
288
  return node;
275
289
  }
276
290
 
277
- static Var *
278
- _readVar(OUT_TYPE(Var, Var) msg)
291
+ static IntoClause *
292
+ _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg)
279
293
  {
280
- Var *node = makeNode(Var);
281
- READ_INT_FIELD(varno, varno, varno);
282
- READ_INT_FIELD(varattno, varattno, varattno);
283
- READ_UINT_FIELD(vartype, vartype, vartype);
284
- READ_INT_FIELD(vartypmod, vartypmod, vartypmod);
285
- READ_UINT_FIELD(varcollid, varcollid, varcollid);
294
+ IntoClause *node = makeNode(IntoClause);
295
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
296
+ READ_LIST_FIELD(col_names, colNames, colNames);
297
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
298
+ READ_LIST_FIELD(options, options, options);
299
+ READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
300
+ READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
301
+ READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
302
+ READ_BOOL_FIELD(skip_data, skipData, skipData);
303
+ return node;
304
+ }
305
+
306
+ static Var *
307
+ _readVar(OUT_TYPE(Var, Var) msg)
308
+ {
309
+ Var *node = makeNode(Var);
310
+ READ_INT_FIELD(varno, varno, varno);
311
+ READ_INT_FIELD(varattno, varattno, varattno);
312
+ READ_UINT_FIELD(vartype, vartype, vartype);
313
+ READ_INT_FIELD(vartypmod, vartypmod, vartypmod);
314
+ READ_UINT_FIELD(varcollid, varcollid, varcollid);
315
+ READ_BITMAPSET_FIELD(varnullingrels, varnullingrels, varnullingrels);
286
316
  READ_UINT_FIELD(varlevelsup, varlevelsup, varlevelsup);
287
- READ_UINT_FIELD(varnosyn, varnosyn, varnosyn);
288
- READ_INT_FIELD(varattnosyn, varattnosyn, varattnosyn);
289
317
  READ_INT_FIELD(location, location, location);
290
318
  return node;
291
319
  }
@@ -311,7 +339,6 @@ _readAggref(OUT_TYPE(Aggref, Aggref) msg)
311
339
  READ_UINT_FIELD(aggtype, aggtype, aggtype);
312
340
  READ_UINT_FIELD(aggcollid, aggcollid, aggcollid);
313
341
  READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
314
- READ_UINT_FIELD(aggtranstype, aggtranstype, aggtranstype);
315
342
  READ_LIST_FIELD(aggargtypes, aggargtypes, aggargtypes);
316
343
  READ_LIST_FIELD(aggdirectargs, aggdirectargs, aggdirectargs);
317
344
  READ_LIST_FIELD(args, args, args);
@@ -335,7 +362,6 @@ _readGroupingFunc(OUT_TYPE(GroupingFunc, GroupingFunc) msg)
335
362
  GroupingFunc *node = makeNode(GroupingFunc);
336
363
  READ_LIST_FIELD(args, args, args);
337
364
  READ_LIST_FIELD(refs, refs, refs);
338
- READ_LIST_FIELD(cols, cols, cols);
339
365
  READ_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
340
366
  READ_INT_FIELD(location, location, location);
341
367
  return node;
@@ -406,7 +432,6 @@ _readOpExpr(OUT_TYPE(OpExpr, OpExpr) msg)
406
432
  {
407
433
  OpExpr *node = makeNode(OpExpr);
408
434
  READ_UINT_FIELD(opno, opno, opno);
409
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
410
435
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
411
436
  READ_BOOL_FIELD(opretset, opretset, opretset);
412
437
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -421,7 +446,6 @@ _readDistinctExpr(OUT_TYPE(DistinctExpr, DistinctExpr) msg)
421
446
  {
422
447
  DistinctExpr *node = makeNode(DistinctExpr);
423
448
  READ_UINT_FIELD(opno, opno, opno);
424
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
425
449
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
426
450
  READ_BOOL_FIELD(opretset, opretset, opretset);
427
451
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -436,7 +460,6 @@ _readNullIfExpr(OUT_TYPE(NullIfExpr, NullIfExpr) msg)
436
460
  {
437
461
  NullIfExpr *node = makeNode(NullIfExpr);
438
462
  READ_UINT_FIELD(opno, opno, opno);
439
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
440
463
  READ_UINT_FIELD(opresulttype, opresulttype, opresulttype);
441
464
  READ_BOOL_FIELD(opretset, opretset, opretset);
442
465
  READ_UINT_FIELD(opcollid, opcollid, opcollid);
@@ -451,9 +474,6 @@ _readScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) msg)
451
474
  {
452
475
  ScalarArrayOpExpr *node = makeNode(ScalarArrayOpExpr);
453
476
  READ_UINT_FIELD(opno, opno, opno);
454
- READ_UINT_FIELD(opfuncid, opfuncid, opfuncid);
455
- READ_UINT_FIELD(hashfuncid, hashfuncid, hashfuncid);
456
- READ_UINT_FIELD(negfuncid, negfuncid, negfuncid);
457
477
  READ_BOOL_FIELD(use_or, useOr, useOr);
458
478
  READ_UINT_FIELD(inputcollid, inputcollid, inputcollid);
459
479
  READ_LIST_FIELD(args, args, args);
@@ -714,12 +734,70 @@ _readXmlExpr(OUT_TYPE(XmlExpr, XmlExpr) msg)
714
734
  READ_LIST_FIELD(arg_names, arg_names, arg_names);
715
735
  READ_LIST_FIELD(args, args, args);
716
736
  READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
737
+ READ_BOOL_FIELD(indent, indent, indent);
717
738
  READ_UINT_FIELD(type, type, type);
718
739
  READ_INT_FIELD(typmod, typmod, typmod);
719
740
  READ_INT_FIELD(location, location, location);
720
741
  return node;
721
742
  }
722
743
 
744
+ static JsonFormat *
745
+ _readJsonFormat(OUT_TYPE(JsonFormat, JsonFormat) msg)
746
+ {
747
+ JsonFormat *node = makeNode(JsonFormat);
748
+ READ_ENUM_FIELD(JsonFormatType, format_type, format_type, format_type);
749
+ READ_ENUM_FIELD(JsonEncoding, encoding, encoding, encoding);
750
+ READ_INT_FIELD(location, location, location);
751
+ return node;
752
+ }
753
+
754
+ static JsonReturning *
755
+ _readJsonReturning(OUT_TYPE(JsonReturning, JsonReturning) msg)
756
+ {
757
+ JsonReturning *node = makeNode(JsonReturning);
758
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
759
+ READ_UINT_FIELD(typid, typid, typid);
760
+ READ_INT_FIELD(typmod, typmod, typmod);
761
+ return node;
762
+ }
763
+
764
+ static JsonValueExpr *
765
+ _readJsonValueExpr(OUT_TYPE(JsonValueExpr, JsonValueExpr) msg)
766
+ {
767
+ JsonValueExpr *node = makeNode(JsonValueExpr);
768
+ READ_EXPR_PTR_FIELD(raw_expr, raw_expr, raw_expr);
769
+ READ_EXPR_PTR_FIELD(formatted_expr, formatted_expr, formatted_expr);
770
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
771
+ return node;
772
+ }
773
+
774
+ static JsonConstructorExpr *
775
+ _readJsonConstructorExpr(OUT_TYPE(JsonConstructorExpr, JsonConstructorExpr) msg)
776
+ {
777
+ JsonConstructorExpr *node = makeNode(JsonConstructorExpr);
778
+ READ_ENUM_FIELD(JsonConstructorType, type, type, type);
779
+ READ_LIST_FIELD(args, args, args);
780
+ READ_EXPR_PTR_FIELD(func, func, func);
781
+ READ_EXPR_PTR_FIELD(coercion, coercion, coercion);
782
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
783
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
784
+ READ_BOOL_FIELD(unique, unique, unique);
785
+ READ_INT_FIELD(location, location, location);
786
+ return node;
787
+ }
788
+
789
+ static JsonIsPredicate *
790
+ _readJsonIsPredicate(OUT_TYPE(JsonIsPredicate, JsonIsPredicate) msg)
791
+ {
792
+ JsonIsPredicate *node = makeNode(JsonIsPredicate);
793
+ READ_NODE_PTR_FIELD(expr, expr, expr);
794
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
795
+ READ_ENUM_FIELD(JsonValueType, item_type, item_type, item_type);
796
+ READ_BOOL_FIELD(unique_keys, unique_keys, unique_keys);
797
+ READ_INT_FIELD(location, location, location);
798
+ return node;
799
+ }
800
+
723
801
  static NullTest *
724
802
  _readNullTest(OUT_TYPE(NullTest, NullTest) msg)
725
803
  {
@@ -867,44 +945,6 @@ _readOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) msg)
867
945
  return node;
868
946
  }
869
947
 
870
- static IntoClause *
871
- _readIntoClause(OUT_TYPE(IntoClause, IntoClause) msg)
872
- {
873
- IntoClause *node = makeNode(IntoClause);
874
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, rel, rel, rel);
875
- READ_LIST_FIELD(col_names, colNames, colNames);
876
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
877
- READ_LIST_FIELD(options, options, options);
878
- READ_ENUM_FIELD(OnCommitAction, on_commit, onCommit, onCommit);
879
- READ_STRING_FIELD(table_space_name, tableSpaceName, tableSpaceName);
880
- READ_NODE_PTR_FIELD(view_query, viewQuery, viewQuery);
881
- READ_BOOL_FIELD(skip_data, skipData, skipData);
882
- return node;
883
- }
884
-
885
- static MergeAction *
886
- _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg)
887
- {
888
- MergeAction *node = makeNode(MergeAction);
889
- READ_BOOL_FIELD(matched, matched, matched);
890
- READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
891
- READ_ENUM_FIELD(OverridingKind, override, override, override);
892
- READ_NODE_PTR_FIELD(qual, qual, qual);
893
- READ_LIST_FIELD(target_list, targetList, targetList);
894
- READ_LIST_FIELD(update_colnos, updateColnos, updateColnos);
895
- return node;
896
- }
897
-
898
- static RawStmt *
899
- _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg)
900
- {
901
- RawStmt *node = makeNode(RawStmt);
902
- READ_NODE_PTR_FIELD(stmt, stmt, stmt);
903
- READ_INT_FIELD(stmt_location, stmt_location, stmt_location);
904
- READ_INT_FIELD(stmt_len, stmt_len, stmt_len);
905
- return node;
906
- }
907
-
908
948
  static Query *
909
949
  _readQuery(OUT_TYPE(Query, Query) msg)
910
950
  {
@@ -926,6 +966,7 @@ _readQuery(OUT_TYPE(Query, Query) msg)
926
966
  READ_BOOL_FIELD(is_return, isReturn, isReturn);
927
967
  READ_LIST_FIELD(cte_list, cteList, cteList);
928
968
  READ_LIST_FIELD(rtable, rtable, rtable);
969
+ READ_LIST_FIELD(rteperminfos, rteperminfos, rteperminfos);
929
970
  READ_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree);
930
971
  READ_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList);
931
972
  READ_BOOL_FIELD(merge_use_outer_join, mergeUseOuterJoin, mergeUseOuterJoin);
@@ -952,664 +993,854 @@ _readQuery(OUT_TYPE(Query, Query) msg)
952
993
  return node;
953
994
  }
954
995
 
955
- static InsertStmt *
956
- _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg)
996
+ static TypeName *
997
+ _readTypeName(OUT_TYPE(TypeName, TypeName) msg)
957
998
  {
958
- InsertStmt *node = makeNode(InsertStmt);
959
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
960
- READ_LIST_FIELD(cols, cols, cols);
961
- READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
962
- READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
963
- READ_LIST_FIELD(returning_list, returningList, returningList);
964
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
965
- READ_ENUM_FIELD(OverridingKind, override, override, override);
999
+ TypeName *node = makeNode(TypeName);
1000
+ READ_LIST_FIELD(names, names, names);
1001
+ READ_UINT_FIELD(type_oid, typeOid, typeOid);
1002
+ READ_BOOL_FIELD(setof, setof, setof);
1003
+ READ_BOOL_FIELD(pct_type, pct_type, pct_type);
1004
+ READ_LIST_FIELD(typmods, typmods, typmods);
1005
+ READ_INT_FIELD(typemod, typemod, typemod);
1006
+ READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
1007
+ READ_INT_FIELD(location, location, location);
966
1008
  return node;
967
1009
  }
968
1010
 
969
- static DeleteStmt *
970
- _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg)
1011
+ static ColumnRef *
1012
+ _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg)
971
1013
  {
972
- DeleteStmt *node = makeNode(DeleteStmt);
973
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
974
- READ_LIST_FIELD(using_clause, usingClause, usingClause);
975
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
976
- READ_LIST_FIELD(returning_list, returningList, returningList);
977
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1014
+ ColumnRef *node = makeNode(ColumnRef);
1015
+ READ_LIST_FIELD(fields, fields, fields);
1016
+ READ_INT_FIELD(location, location, location);
978
1017
  return node;
979
1018
  }
980
1019
 
981
- static UpdateStmt *
982
- _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg)
1020
+ static ParamRef *
1021
+ _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg)
983
1022
  {
984
- UpdateStmt *node = makeNode(UpdateStmt);
985
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
986
- READ_LIST_FIELD(target_list, targetList, targetList);
987
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
988
- READ_LIST_FIELD(from_clause, fromClause, fromClause);
989
- READ_LIST_FIELD(returning_list, returningList, returningList);
990
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1023
+ ParamRef *node = makeNode(ParamRef);
1024
+ READ_INT_FIELD(number, number, number);
1025
+ READ_INT_FIELD(location, location, location);
991
1026
  return node;
992
1027
  }
993
1028
 
994
- static MergeStmt *
995
- _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg)
1029
+ static A_Expr *
1030
+ _readAExpr(OUT_TYPE(A_Expr, AExpr) msg)
996
1031
  {
997
- MergeStmt *node = makeNode(MergeStmt);
998
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
999
- READ_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation);
1000
- READ_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition);
1001
- READ_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses);
1002
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1032
+ A_Expr *node = makeNode(A_Expr);
1033
+ READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
1034
+ READ_LIST_FIELD(name, name, name);
1035
+ READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
1036
+ READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
1037
+ READ_INT_FIELD(location, location, location);
1003
1038
  return node;
1004
1039
  }
1005
1040
 
1006
- static SelectStmt *
1007
- _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg)
1041
+ static TypeCast *
1042
+ _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg)
1008
1043
  {
1009
- SelectStmt *node = makeNode(SelectStmt);
1010
- READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
1011
- READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
1012
- READ_LIST_FIELD(target_list, targetList, targetList);
1013
- READ_LIST_FIELD(from_clause, fromClause, fromClause);
1014
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1015
- READ_LIST_FIELD(group_clause, groupClause, groupClause);
1016
- READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
1017
- READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
1018
- READ_LIST_FIELD(window_clause, windowClause, windowClause);
1019
- READ_LIST_FIELD(values_lists, valuesLists, valuesLists);
1020
- READ_LIST_FIELD(sort_clause, sortClause, sortClause);
1021
- READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
1022
- READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
1023
- READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
1024
- READ_LIST_FIELD(locking_clause, lockingClause, lockingClause);
1025
- READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1026
- READ_ENUM_FIELD(SetOperation, op, op, op);
1027
- READ_BOOL_FIELD(all, all, all);
1028
- READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
1029
- READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1044
+ TypeCast *node = makeNode(TypeCast);
1045
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1046
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1047
+ READ_INT_FIELD(location, location, location);
1030
1048
  return node;
1031
1049
  }
1032
1050
 
1033
- static ReturnStmt *
1034
- _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg)
1051
+ static CollateClause *
1052
+ _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg)
1035
1053
  {
1036
- ReturnStmt *node = makeNode(ReturnStmt);
1037
- READ_NODE_PTR_FIELD(returnval, returnval, returnval);
1054
+ CollateClause *node = makeNode(CollateClause);
1055
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1056
+ READ_LIST_FIELD(collname, collname, collname);
1057
+ READ_INT_FIELD(location, location, location);
1038
1058
  return node;
1039
1059
  }
1040
1060
 
1041
- static PLAssignStmt *
1042
- _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg)
1061
+ static RoleSpec *
1062
+ _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg)
1043
1063
  {
1044
- PLAssignStmt *node = makeNode(PLAssignStmt);
1045
- READ_STRING_FIELD(name, name, name);
1046
- READ_LIST_FIELD(indirection, indirection, indirection);
1047
- READ_INT_FIELD(nnames, nnames, nnames);
1048
- READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val);
1064
+ RoleSpec *node = makeNode(RoleSpec);
1065
+ READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
1066
+ READ_STRING_FIELD(rolename, rolename, rolename);
1049
1067
  READ_INT_FIELD(location, location, location);
1050
1068
  return node;
1051
1069
  }
1052
1070
 
1053
- static AlterTableStmt *
1054
- _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg)
1071
+ static FuncCall *
1072
+ _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg)
1055
1073
  {
1056
- AlterTableStmt *node = makeNode(AlterTableStmt);
1057
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1058
- READ_LIST_FIELD(cmds, cmds, cmds);
1059
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1060
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1074
+ FuncCall *node = makeNode(FuncCall);
1075
+ READ_LIST_FIELD(funcname, funcname, funcname);
1076
+ READ_LIST_FIELD(args, args, args);
1077
+ READ_LIST_FIELD(agg_order, agg_order, agg_order);
1078
+ READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1079
+ READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1080
+ READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
1081
+ READ_BOOL_FIELD(agg_star, agg_star, agg_star);
1082
+ READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
1083
+ READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
1084
+ READ_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat);
1085
+ READ_INT_FIELD(location, location, location);
1061
1086
  return node;
1062
1087
  }
1063
1088
 
1064
- static AlterTableCmd *
1065
- _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg)
1089
+ static A_Star *
1090
+ _readAStar(OUT_TYPE(A_Star, AStar) msg)
1066
1091
  {
1067
- AlterTableCmd *node = makeNode(AlterTableCmd);
1068
- READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
1069
- READ_STRING_FIELD(name, name, name);
1070
- READ_INT_FIELD(num, num, num);
1071
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1072
- READ_NODE_PTR_FIELD(def, def, def);
1073
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1074
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1075
- READ_BOOL_FIELD(recurse, recurse, recurse);
1092
+ A_Star *node = makeNode(A_Star);
1076
1093
  return node;
1077
1094
  }
1078
1095
 
1079
- static AlterDomainStmt *
1080
- _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg)
1096
+ static A_Indices *
1097
+ _readAIndices(OUT_TYPE(A_Indices, AIndices) msg)
1081
1098
  {
1082
- AlterDomainStmt *node = makeNode(AlterDomainStmt);
1083
- READ_CHAR_FIELD(subtype, subtype, subtype);
1084
- READ_LIST_FIELD(type_name, typeName, typeName);
1085
- READ_STRING_FIELD(name, name, name);
1086
- READ_NODE_PTR_FIELD(def, def, def);
1087
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1088
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1099
+ A_Indices *node = makeNode(A_Indices);
1100
+ READ_BOOL_FIELD(is_slice, is_slice, is_slice);
1101
+ READ_NODE_PTR_FIELD(lidx, lidx, lidx);
1102
+ READ_NODE_PTR_FIELD(uidx, uidx, uidx);
1089
1103
  return node;
1090
1104
  }
1091
1105
 
1092
- static SetOperationStmt *
1093
- _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg)
1106
+ static A_Indirection *
1107
+ _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg)
1094
1108
  {
1095
- SetOperationStmt *node = makeNode(SetOperationStmt);
1096
- READ_ENUM_FIELD(SetOperation, op, op, op);
1097
- READ_BOOL_FIELD(all, all, all);
1098
- READ_NODE_PTR_FIELD(larg, larg, larg);
1099
- READ_NODE_PTR_FIELD(rarg, rarg, rarg);
1100
- READ_LIST_FIELD(col_types, colTypes, colTypes);
1101
- READ_LIST_FIELD(col_typmods, colTypmods, colTypmods);
1102
- READ_LIST_FIELD(col_collations, colCollations, colCollations);
1103
- READ_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1109
+ A_Indirection *node = makeNode(A_Indirection);
1110
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1111
+ READ_LIST_FIELD(indirection, indirection, indirection);
1104
1112
  return node;
1105
1113
  }
1106
1114
 
1107
- static GrantStmt *
1108
- _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg)
1115
+ static A_ArrayExpr *
1116
+ _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg)
1109
1117
  {
1110
- GrantStmt *node = makeNode(GrantStmt);
1111
- READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1112
- READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
1113
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1114
- READ_LIST_FIELD(objects, objects, objects);
1115
- READ_LIST_FIELD(privileges, privileges, privileges);
1116
- READ_LIST_FIELD(grantees, grantees, grantees);
1117
- READ_BOOL_FIELD(grant_option, grant_option, grant_option);
1118
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1119
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1118
+ A_ArrayExpr *node = makeNode(A_ArrayExpr);
1119
+ READ_LIST_FIELD(elements, elements, elements);
1120
+ READ_INT_FIELD(location, location, location);
1120
1121
  return node;
1121
1122
  }
1122
1123
 
1123
- static GrantRoleStmt *
1124
- _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg)
1124
+ static ResTarget *
1125
+ _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg)
1125
1126
  {
1126
- GrantRoleStmt *node = makeNode(GrantRoleStmt);
1127
- READ_LIST_FIELD(granted_roles, granted_roles, granted_roles);
1128
- READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
1129
- READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1130
- READ_BOOL_FIELD(admin_opt, admin_opt, admin_opt);
1131
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1132
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1127
+ ResTarget *node = makeNode(ResTarget);
1128
+ READ_STRING_FIELD(name, name, name);
1129
+ READ_LIST_FIELD(indirection, indirection, indirection);
1130
+ READ_NODE_PTR_FIELD(val, val, val);
1131
+ READ_INT_FIELD(location, location, location);
1133
1132
  return node;
1134
1133
  }
1135
1134
 
1136
- static AlterDefaultPrivilegesStmt *
1137
- _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg)
1135
+ static MultiAssignRef *
1136
+ _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg)
1138
1137
  {
1139
- AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt);
1140
- READ_LIST_FIELD(options, options, options);
1141
- READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1138
+ MultiAssignRef *node = makeNode(MultiAssignRef);
1139
+ READ_NODE_PTR_FIELD(source, source, source);
1140
+ READ_INT_FIELD(colno, colno, colno);
1141
+ READ_INT_FIELD(ncolumns, ncolumns, ncolumns);
1142
1142
  return node;
1143
1143
  }
1144
1144
 
1145
- static ClosePortalStmt *
1146
- _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg)
1145
+ static SortBy *
1146
+ _readSortBy(OUT_TYPE(SortBy, SortBy) msg)
1147
1147
  {
1148
- ClosePortalStmt *node = makeNode(ClosePortalStmt);
1149
- READ_STRING_FIELD(portalname, portalname, portalname);
1148
+ SortBy *node = makeNode(SortBy);
1149
+ READ_NODE_PTR_FIELD(node, node, node);
1150
+ READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
1151
+ READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
1152
+ READ_LIST_FIELD(use_op, useOp, useOp);
1153
+ READ_INT_FIELD(location, location, location);
1150
1154
  return node;
1151
1155
  }
1152
1156
 
1153
- static ClusterStmt *
1154
- _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg)
1157
+ static WindowDef *
1158
+ _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg)
1155
1159
  {
1156
- ClusterStmt *node = makeNode(ClusterStmt);
1157
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1158
- READ_STRING_FIELD(indexname, indexname, indexname);
1159
- READ_LIST_FIELD(params, params, params);
1160
+ WindowDef *node = makeNode(WindowDef);
1161
+ READ_STRING_FIELD(name, name, name);
1162
+ READ_STRING_FIELD(refname, refname, refname);
1163
+ READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1164
+ READ_LIST_FIELD(order_clause, orderClause, orderClause);
1165
+ READ_INT_FIELD(frame_options, frameOptions, frameOptions);
1166
+ READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1167
+ READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1168
+ READ_INT_FIELD(location, location, location);
1160
1169
  return node;
1161
1170
  }
1162
1171
 
1163
- static CopyStmt *
1164
- _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg)
1172
+ static RangeSubselect *
1173
+ _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg)
1165
1174
  {
1166
- CopyStmt *node = makeNode(CopyStmt);
1167
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1168
- READ_NODE_PTR_FIELD(query, query, query);
1169
- READ_LIST_FIELD(attlist, attlist, attlist);
1170
- READ_BOOL_FIELD(is_from, is_from, is_from);
1171
- READ_BOOL_FIELD(is_program, is_program, is_program);
1172
- READ_STRING_FIELD(filename, filename, filename);
1173
- READ_LIST_FIELD(options, options, options);
1174
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1175
+ RangeSubselect *node = makeNode(RangeSubselect);
1176
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1177
+ READ_NODE_PTR_FIELD(subquery, subquery, subquery);
1178
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1175
1179
  return node;
1176
1180
  }
1177
1181
 
1178
- static CreateStmt *
1179
- _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg)
1182
+ static RangeFunction *
1183
+ _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg)
1180
1184
  {
1181
- CreateStmt *node = makeNode(CreateStmt);
1182
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1183
- READ_LIST_FIELD(table_elts, tableElts, tableElts);
1184
- READ_LIST_FIELD(inh_relations, inhRelations, inhRelations);
1185
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
1186
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
1187
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
1188
- READ_LIST_FIELD(constraints, constraints, constraints);
1189
- READ_LIST_FIELD(options, options, options);
1190
- READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
1191
- READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1192
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
1193
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1185
+ RangeFunction *node = makeNode(RangeFunction);
1186
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1187
+ READ_BOOL_FIELD(ordinality, ordinality, ordinality);
1188
+ READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
1189
+ READ_LIST_FIELD(functions, functions, functions);
1190
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1191
+ READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1194
1192
  return node;
1195
1193
  }
1196
1194
 
1197
- static DefineStmt *
1198
- _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg)
1195
+ static RangeTableFunc *
1196
+ _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg)
1199
1197
  {
1200
- DefineStmt *node = makeNode(DefineStmt);
1201
- READ_ENUM_FIELD(ObjectType, kind, kind, kind);
1202
- READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
1203
- READ_LIST_FIELD(defnames, defnames, defnames);
1198
+ RangeTableFunc *node = makeNode(RangeTableFunc);
1199
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1200
+ READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
1201
+ READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
1202
+ READ_LIST_FIELD(namespaces, namespaces, namespaces);
1203
+ READ_LIST_FIELD(columns, columns, columns);
1204
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1205
+ READ_INT_FIELD(location, location, location);
1206
+ return node;
1207
+ }
1208
+
1209
+ static RangeTableFuncCol *
1210
+ _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg)
1211
+ {
1212
+ RangeTableFuncCol *node = makeNode(RangeTableFuncCol);
1213
+ READ_STRING_FIELD(colname, colname, colname);
1214
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1215
+ READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
1216
+ READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1217
+ READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
1218
+ READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
1219
+ READ_INT_FIELD(location, location, location);
1220
+ return node;
1221
+ }
1222
+
1223
+ static RangeTableSample *
1224
+ _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg)
1225
+ {
1226
+ RangeTableSample *node = makeNode(RangeTableSample);
1227
+ READ_NODE_PTR_FIELD(relation, relation, relation);
1228
+ READ_LIST_FIELD(method, method, method);
1204
1229
  READ_LIST_FIELD(args, args, args);
1205
- READ_LIST_FIELD(definition, definition, definition);
1206
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1207
- READ_BOOL_FIELD(replace, replace, replace);
1230
+ READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
1231
+ READ_INT_FIELD(location, location, location);
1208
1232
  return node;
1209
1233
  }
1210
1234
 
1211
- static DropStmt *
1212
- _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg)
1235
+ static ColumnDef *
1236
+ _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg)
1213
1237
  {
1214
- DropStmt *node = makeNode(DropStmt);
1215
- READ_LIST_FIELD(objects, objects, objects);
1216
- READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
1217
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1218
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1219
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1238
+ ColumnDef *node = makeNode(ColumnDef);
1239
+ READ_STRING_FIELD(colname, colname, colname);
1240
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1241
+ READ_STRING_FIELD(compression, compression, compression);
1242
+ READ_INT_FIELD(inhcount, inhcount, inhcount);
1243
+ READ_BOOL_FIELD(is_local, is_local, is_local);
1244
+ READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
1245
+ READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
1246
+ READ_CHAR_FIELD(storage, storage, storage);
1247
+ READ_STRING_FIELD(storage_name, storage_name, storage_name);
1248
+ READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
1249
+ READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
1250
+ READ_CHAR_FIELD(identity, identity, identity);
1251
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
1252
+ READ_CHAR_FIELD(generated, generated, generated);
1253
+ READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1254
+ READ_UINT_FIELD(coll_oid, collOid, collOid);
1255
+ READ_LIST_FIELD(constraints, constraints, constraints);
1256
+ READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
1257
+ READ_INT_FIELD(location, location, location);
1220
1258
  return node;
1221
1259
  }
1222
1260
 
1223
- static TruncateStmt *
1224
- _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg)
1261
+ static TableLikeClause *
1262
+ _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg)
1225
1263
  {
1226
- TruncateStmt *node = makeNode(TruncateStmt);
1227
- READ_LIST_FIELD(relations, relations, relations);
1228
- READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
1229
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1264
+ TableLikeClause *node = makeNode(TableLikeClause);
1265
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1266
+ READ_UINT_FIELD(options, options, options);
1267
+ READ_UINT_FIELD(relation_oid, relationOid, relationOid);
1230
1268
  return node;
1231
1269
  }
1232
1270
 
1233
- static CommentStmt *
1234
- _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg)
1271
+ static IndexElem *
1272
+ _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg)
1235
1273
  {
1236
- CommentStmt *node = makeNode(CommentStmt);
1237
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1238
- READ_NODE_PTR_FIELD(object, object, object);
1239
- READ_STRING_FIELD(comment, comment, comment);
1274
+ IndexElem *node = makeNode(IndexElem);
1275
+ READ_STRING_FIELD(name, name, name);
1276
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1277
+ READ_STRING_FIELD(indexcolname, indexcolname, indexcolname);
1278
+ READ_LIST_FIELD(collation, collation, collation);
1279
+ READ_LIST_FIELD(opclass, opclass, opclass);
1280
+ READ_LIST_FIELD(opclassopts, opclassopts, opclassopts);
1281
+ READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
1282
+ READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
1240
1283
  return node;
1241
1284
  }
1242
1285
 
1243
- static FetchStmt *
1244
- _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg)
1286
+ static DefElem *
1287
+ _readDefElem(OUT_TYPE(DefElem, DefElem) msg)
1245
1288
  {
1246
- FetchStmt *node = makeNode(FetchStmt);
1247
- READ_ENUM_FIELD(FetchDirection, direction, direction, direction);
1248
- READ_LONG_FIELD(how_many, howMany, howMany);
1249
- READ_STRING_FIELD(portalname, portalname, portalname);
1250
- READ_BOOL_FIELD(ismove, ismove, ismove);
1289
+ DefElem *node = makeNode(DefElem);
1290
+ READ_STRING_FIELD(defnamespace, defnamespace, defnamespace);
1291
+ READ_STRING_FIELD(defname, defname, defname);
1292
+ READ_NODE_PTR_FIELD(arg, arg, arg);
1293
+ READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
1294
+ READ_INT_FIELD(location, location, location);
1251
1295
  return node;
1252
1296
  }
1253
1297
 
1254
- static IndexStmt *
1255
- _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg)
1298
+ static LockingClause *
1299
+ _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg)
1256
1300
  {
1257
- IndexStmt *node = makeNode(IndexStmt);
1258
- READ_STRING_FIELD(idxname, idxname, idxname);
1259
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1260
- READ_STRING_FIELD(access_method, accessMethod, accessMethod);
1261
- READ_STRING_FIELD(table_space, tableSpace, tableSpace);
1262
- READ_LIST_FIELD(index_params, indexParams, indexParams);
1263
- READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
1264
- READ_LIST_FIELD(options, options, options);
1265
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1266
- READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
1267
- READ_STRING_FIELD(idxcomment, idxcomment, idxcomment);
1268
- READ_UINT_FIELD(index_oid, indexOid, indexOid);
1269
- READ_UINT_FIELD(old_node, oldNode, oldNode);
1270
- READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
1271
- READ_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid);
1272
- READ_BOOL_FIELD(unique, unique, unique);
1273
- READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
1274
- READ_BOOL_FIELD(primary, primary, primary);
1275
- READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1276
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
1277
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1278
- READ_BOOL_FIELD(transformed, transformed, transformed);
1301
+ LockingClause *node = makeNode(LockingClause);
1302
+ READ_LIST_FIELD(locked_rels, lockedRels, lockedRels);
1303
+ READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1304
+ READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1305
+ return node;
1306
+ }
1307
+
1308
+ static XmlSerialize *
1309
+ _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg)
1310
+ {
1311
+ XmlSerialize *node = makeNode(XmlSerialize);
1312
+ READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
1313
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1314
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1315
+ READ_BOOL_FIELD(indent, indent, indent);
1316
+ READ_INT_FIELD(location, location, location);
1317
+ return node;
1318
+ }
1319
+
1320
+ static PartitionElem *
1321
+ _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg)
1322
+ {
1323
+ PartitionElem *node = makeNode(PartitionElem);
1324
+ READ_STRING_FIELD(name, name, name);
1325
+ READ_NODE_PTR_FIELD(expr, expr, expr);
1326
+ READ_LIST_FIELD(collation, collation, collation);
1327
+ READ_LIST_FIELD(opclass, opclass, opclass);
1328
+ READ_INT_FIELD(location, location, location);
1329
+ return node;
1330
+ }
1331
+
1332
+ static PartitionSpec *
1333
+ _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg)
1334
+ {
1335
+ PartitionSpec *node = makeNode(PartitionSpec);
1336
+ READ_ENUM_FIELD(PartitionStrategy, strategy, strategy, strategy);
1337
+ READ_LIST_FIELD(part_params, partParams, partParams);
1338
+ READ_INT_FIELD(location, location, location);
1339
+ return node;
1340
+ }
1341
+
1342
+ static PartitionBoundSpec *
1343
+ _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg)
1344
+ {
1345
+ PartitionBoundSpec *node = makeNode(PartitionBoundSpec);
1346
+ READ_CHAR_FIELD(strategy, strategy, strategy);
1347
+ READ_BOOL_FIELD(is_default, is_default, is_default);
1348
+ READ_INT_FIELD(modulus, modulus, modulus);
1349
+ READ_INT_FIELD(remainder, remainder, remainder);
1350
+ READ_LIST_FIELD(listdatums, listdatums, listdatums);
1351
+ READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
1352
+ READ_LIST_FIELD(upperdatums, upperdatums, upperdatums);
1353
+ READ_INT_FIELD(location, location, location);
1354
+ return node;
1355
+ }
1356
+
1357
+ static PartitionRangeDatum *
1358
+ _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg)
1359
+ {
1360
+ PartitionRangeDatum *node = makeNode(PartitionRangeDatum);
1361
+ READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
1362
+ READ_NODE_PTR_FIELD(value, value, value);
1363
+ READ_INT_FIELD(location, location, location);
1364
+ return node;
1365
+ }
1366
+
1367
+ static PartitionCmd *
1368
+ _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg)
1369
+ {
1370
+ PartitionCmd *node = makeNode(PartitionCmd);
1371
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
1372
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
1279
1373
  READ_BOOL_FIELD(concurrent, concurrent, concurrent);
1280
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1281
- READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
1282
1374
  return node;
1283
1375
  }
1284
1376
 
1285
- static CreateFunctionStmt *
1286
- _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg)
1377
+ static RangeTblEntry *
1378
+ _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg)
1287
1379
  {
1288
- CreateFunctionStmt *node = makeNode(CreateFunctionStmt);
1289
- READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
1290
- READ_BOOL_FIELD(replace, replace, replace);
1291
- READ_LIST_FIELD(funcname, funcname, funcname);
1292
- READ_LIST_FIELD(parameters, parameters, parameters);
1293
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
1294
- READ_LIST_FIELD(options, options, options);
1295
- READ_NODE_PTR_FIELD(sql_body, sql_body, sql_body);
1380
+ RangeTblEntry *node = makeNode(RangeTblEntry);
1381
+ READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
1382
+ READ_UINT_FIELD(relid, relid, relid);
1383
+ READ_CHAR_FIELD(relkind, relkind, relkind);
1384
+ READ_INT_FIELD(rellockmode, rellockmode, rellockmode);
1385
+ READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
1386
+ READ_UINT_FIELD(perminfoindex, perminfoindex, perminfoindex);
1387
+ READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
1388
+ READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
1389
+ READ_ENUM_FIELD(JoinType, jointype, jointype, jointype);
1390
+ READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
1391
+ READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
1392
+ READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
1393
+ READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
1394
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
1395
+ READ_LIST_FIELD(functions, functions, functions);
1396
+ READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
1397
+ READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
1398
+ READ_LIST_FIELD(values_lists, values_lists, values_lists);
1399
+ READ_STRING_FIELD(ctename, ctename, ctename);
1400
+ READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
1401
+ READ_BOOL_FIELD(self_reference, self_reference, self_reference);
1402
+ READ_LIST_FIELD(coltypes, coltypes, coltypes);
1403
+ READ_LIST_FIELD(coltypmods, coltypmods, coltypmods);
1404
+ READ_LIST_FIELD(colcollations, colcollations, colcollations);
1405
+ READ_STRING_FIELD(enrname, enrname, enrname);
1406
+ READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
1407
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
1408
+ READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
1409
+ READ_BOOL_FIELD(lateral, lateral, lateral);
1410
+ READ_BOOL_FIELD(inh, inh, inh);
1411
+ READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
1412
+ READ_LIST_FIELD(security_quals, securityQuals, securityQuals);
1296
1413
  return node;
1297
1414
  }
1298
1415
 
1299
- static AlterFunctionStmt *
1300
- _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg)
1416
+ static RTEPermissionInfo *
1417
+ _readRTEPermissionInfo(OUT_TYPE(RTEPermissionInfo, RTEPermissionInfo) msg)
1301
1418
  {
1302
- AlterFunctionStmt *node = makeNode(AlterFunctionStmt);
1303
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1304
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1305
- READ_LIST_FIELD(actions, actions, actions);
1419
+ RTEPermissionInfo *node = makeNode(RTEPermissionInfo);
1420
+ READ_UINT_FIELD(relid, relid, relid);
1421
+ READ_BOOL_FIELD(inh, inh, inh);
1422
+ READ_UINT64_FIELD(required_perms, requiredPerms, requiredPerms);
1423
+ READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
1424
+ READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
1425
+ READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
1426
+ READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
1306
1427
  return node;
1307
1428
  }
1308
1429
 
1309
- static DoStmt *
1310
- _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg)
1430
+ static RangeTblFunction *
1431
+ _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg)
1311
1432
  {
1312
- DoStmt *node = makeNode(DoStmt);
1433
+ RangeTblFunction *node = makeNode(RangeTblFunction);
1434
+ READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
1435
+ READ_INT_FIELD(funccolcount, funccolcount, funccolcount);
1436
+ READ_LIST_FIELD(funccolnames, funccolnames, funccolnames);
1437
+ READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
1438
+ READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
1439
+ READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
1440
+ READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
1441
+ return node;
1442
+ }
1443
+
1444
+ static TableSampleClause *
1445
+ _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg)
1446
+ {
1447
+ TableSampleClause *node = makeNode(TableSampleClause);
1448
+ READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
1313
1449
  READ_LIST_FIELD(args, args, args);
1450
+ READ_EXPR_PTR_FIELD(repeatable, repeatable, repeatable);
1314
1451
  return node;
1315
1452
  }
1316
1453
 
1317
- static RenameStmt *
1318
- _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg)
1454
+ static WithCheckOption *
1455
+ _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg)
1319
1456
  {
1320
- RenameStmt *node = makeNode(RenameStmt);
1321
- READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
1322
- READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
1323
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1324
- READ_NODE_PTR_FIELD(object, object, object);
1325
- READ_STRING_FIELD(subname, subname, subname);
1326
- READ_STRING_FIELD(newname, newname, newname);
1327
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1328
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1457
+ WithCheckOption *node = makeNode(WithCheckOption);
1458
+ READ_ENUM_FIELD(WCOKind, kind, kind, kind);
1459
+ READ_STRING_FIELD(relname, relname, relname);
1460
+ READ_STRING_FIELD(polname, polname, polname);
1461
+ READ_NODE_PTR_FIELD(qual, qual, qual);
1462
+ READ_BOOL_FIELD(cascaded, cascaded, cascaded);
1329
1463
  return node;
1330
1464
  }
1331
1465
 
1332
- static RuleStmt *
1333
- _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg)
1466
+ static SortGroupClause *
1467
+ _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg)
1334
1468
  {
1335
- RuleStmt *node = makeNode(RuleStmt);
1336
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1337
- READ_STRING_FIELD(rulename, rulename, rulename);
1338
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1339
- READ_ENUM_FIELD(CmdType, event, event, event);
1340
- READ_BOOL_FIELD(instead, instead, instead);
1341
- READ_LIST_FIELD(actions, actions, actions);
1342
- READ_BOOL_FIELD(replace, replace, replace);
1469
+ SortGroupClause *node = makeNode(SortGroupClause);
1470
+ READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
1471
+ READ_UINT_FIELD(eqop, eqop, eqop);
1472
+ READ_UINT_FIELD(sortop, sortop, sortop);
1473
+ READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
1474
+ READ_BOOL_FIELD(hashable, hashable, hashable);
1475
+ return node;
1476
+ }
1477
+
1478
+ static GroupingSet *
1479
+ _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg)
1480
+ {
1481
+ GroupingSet *node = makeNode(GroupingSet);
1482
+ READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
1483
+ READ_LIST_FIELD(content, content, content);
1484
+ READ_INT_FIELD(location, location, location);
1485
+ return node;
1486
+ }
1487
+
1488
+ static WindowClause *
1489
+ _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg)
1490
+ {
1491
+ WindowClause *node = makeNode(WindowClause);
1492
+ READ_STRING_FIELD(name, name, name);
1493
+ READ_STRING_FIELD(refname, refname, refname);
1494
+ READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
1495
+ READ_LIST_FIELD(order_clause, orderClause, orderClause);
1496
+ READ_INT_FIELD(frame_options, frameOptions, frameOptions);
1497
+ READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
1498
+ READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
1499
+ READ_LIST_FIELD(run_condition, runCondition, runCondition);
1500
+ READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
1501
+ READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
1502
+ READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
1503
+ READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
1504
+ READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
1505
+ READ_UINT_FIELD(winref, winref, winref);
1506
+ READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
1343
1507
  return node;
1344
1508
  }
1345
1509
 
1346
- static NotifyStmt *
1347
- _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg)
1510
+ static RowMarkClause *
1511
+ _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg)
1348
1512
  {
1349
- NotifyStmt *node = makeNode(NotifyStmt);
1350
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1351
- READ_STRING_FIELD(payload, payload, payload);
1513
+ RowMarkClause *node = makeNode(RowMarkClause);
1514
+ READ_UINT_FIELD(rti, rti, rti);
1515
+ READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
1516
+ READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
1517
+ READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
1352
1518
  return node;
1353
1519
  }
1354
1520
 
1355
- static ListenStmt *
1356
- _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg)
1521
+ static WithClause *
1522
+ _readWithClause(OUT_TYPE(WithClause, WithClause) msg)
1357
1523
  {
1358
- ListenStmt *node = makeNode(ListenStmt);
1359
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1524
+ WithClause *node = makeNode(WithClause);
1525
+ READ_LIST_FIELD(ctes, ctes, ctes);
1526
+ READ_BOOL_FIELD(recursive, recursive, recursive);
1527
+ READ_INT_FIELD(location, location, location);
1360
1528
  return node;
1361
1529
  }
1362
1530
 
1363
- static UnlistenStmt *
1364
- _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg)
1531
+ static InferClause *
1532
+ _readInferClause(OUT_TYPE(InferClause, InferClause) msg)
1365
1533
  {
1366
- UnlistenStmt *node = makeNode(UnlistenStmt);
1367
- READ_STRING_FIELD(conditionname, conditionname, conditionname);
1534
+ InferClause *node = makeNode(InferClause);
1535
+ READ_LIST_FIELD(index_elems, indexElems, indexElems);
1536
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1537
+ READ_STRING_FIELD(conname, conname, conname);
1538
+ READ_INT_FIELD(location, location, location);
1368
1539
  return node;
1369
1540
  }
1370
1541
 
1371
- static TransactionStmt *
1372
- _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg)
1542
+ static OnConflictClause *
1543
+ _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg)
1373
1544
  {
1374
- TransactionStmt *node = makeNode(TransactionStmt);
1375
- READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
1376
- READ_LIST_FIELD(options, options, options);
1377
- READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
1378
- READ_STRING_FIELD(gid, gid, gid);
1379
- READ_BOOL_FIELD(chain, chain, chain);
1545
+ OnConflictClause *node = makeNode(OnConflictClause);
1546
+ READ_ENUM_FIELD(OnConflictAction, action, action, action);
1547
+ READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
1548
+ READ_LIST_FIELD(target_list, targetList, targetList);
1549
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1550
+ READ_INT_FIELD(location, location, location);
1380
1551
  return node;
1381
1552
  }
1382
1553
 
1383
- static ViewStmt *
1384
- _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg)
1554
+ static CTESearchClause *
1555
+ _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg)
1385
1556
  {
1386
- ViewStmt *node = makeNode(ViewStmt);
1387
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
1388
- READ_LIST_FIELD(aliases, aliases, aliases);
1389
- READ_NODE_PTR_FIELD(query, query, query);
1390
- READ_BOOL_FIELD(replace, replace, replace);
1391
- READ_LIST_FIELD(options, options, options);
1392
- READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
1557
+ CTESearchClause *node = makeNode(CTESearchClause);
1558
+ READ_LIST_FIELD(search_col_list, search_col_list, search_col_list);
1559
+ READ_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first);
1560
+ READ_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column);
1561
+ READ_INT_FIELD(location, location, location);
1393
1562
  return node;
1394
1563
  }
1395
1564
 
1396
- static LoadStmt *
1397
- _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg)
1565
+ static CTECycleClause *
1566
+ _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg)
1398
1567
  {
1399
- LoadStmt *node = makeNode(LoadStmt);
1400
- READ_STRING_FIELD(filename, filename, filename);
1568
+ CTECycleClause *node = makeNode(CTECycleClause);
1569
+ READ_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list);
1570
+ READ_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column);
1571
+ READ_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value);
1572
+ READ_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default);
1573
+ READ_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column);
1574
+ READ_INT_FIELD(location, location, location);
1575
+ READ_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type);
1576
+ READ_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod);
1577
+ READ_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation);
1578
+ READ_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop);
1401
1579
  return node;
1402
1580
  }
1403
1581
 
1404
- static CreateDomainStmt *
1405
- _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg)
1582
+ static CommonTableExpr *
1583
+ _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg)
1406
1584
  {
1407
- CreateDomainStmt *node = makeNode(CreateDomainStmt);
1408
- READ_LIST_FIELD(domainname, domainname, domainname);
1409
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1410
- READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
1411
- READ_LIST_FIELD(constraints, constraints, constraints);
1585
+ CommonTableExpr *node = makeNode(CommonTableExpr);
1586
+ READ_STRING_FIELD(ctename, ctename, ctename);
1587
+ READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
1588
+ READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
1589
+ READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
1590
+ READ_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause);
1591
+ READ_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause);
1592
+ READ_INT_FIELD(location, location, location);
1593
+ READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
1594
+ READ_INT_FIELD(cterefcount, cterefcount, cterefcount);
1595
+ READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
1596
+ READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
1597
+ READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
1598
+ READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
1412
1599
  return node;
1413
1600
  }
1414
1601
 
1415
- static CreatedbStmt *
1416
- _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg)
1602
+ static MergeWhenClause *
1603
+ _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg)
1417
1604
  {
1418
- CreatedbStmt *node = makeNode(CreatedbStmt);
1419
- READ_STRING_FIELD(dbname, dbname, dbname);
1420
- READ_LIST_FIELD(options, options, options);
1605
+ MergeWhenClause *node = makeNode(MergeWhenClause);
1606
+ READ_BOOL_FIELD(matched, matched, matched);
1607
+ READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
1608
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
1609
+ READ_NODE_PTR_FIELD(condition, condition, condition);
1610
+ READ_LIST_FIELD(target_list, targetList, targetList);
1611
+ READ_LIST_FIELD(values, values, values);
1421
1612
  return node;
1422
1613
  }
1423
1614
 
1424
- static DropdbStmt *
1425
- _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg)
1615
+ static MergeAction *
1616
+ _readMergeAction(OUT_TYPE(MergeAction, MergeAction) msg)
1426
1617
  {
1427
- DropdbStmt *node = makeNode(DropdbStmt);
1428
- READ_STRING_FIELD(dbname, dbname, dbname);
1429
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1430
- READ_LIST_FIELD(options, options, options);
1618
+ MergeAction *node = makeNode(MergeAction);
1619
+ READ_BOOL_FIELD(matched, matched, matched);
1620
+ READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
1621
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
1622
+ READ_NODE_PTR_FIELD(qual, qual, qual);
1623
+ READ_LIST_FIELD(target_list, targetList, targetList);
1624
+ READ_LIST_FIELD(update_colnos, updateColnos, updateColnos);
1431
1625
  return node;
1432
1626
  }
1433
1627
 
1434
- static VacuumStmt *
1435
- _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg)
1628
+ static TriggerTransition *
1629
+ _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg)
1436
1630
  {
1437
- VacuumStmt *node = makeNode(VacuumStmt);
1438
- READ_LIST_FIELD(options, options, options);
1439
- READ_LIST_FIELD(rels, rels, rels);
1440
- READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
1631
+ TriggerTransition *node = makeNode(TriggerTransition);
1632
+ READ_STRING_FIELD(name, name, name);
1633
+ READ_BOOL_FIELD(is_new, isNew, isNew);
1634
+ READ_BOOL_FIELD(is_table, isTable, isTable);
1441
1635
  return node;
1442
1636
  }
1443
1637
 
1444
- static ExplainStmt *
1445
- _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg)
1638
+ static JsonOutput *
1639
+ _readJsonOutput(OUT_TYPE(JsonOutput, JsonOutput) msg)
1446
1640
  {
1447
- ExplainStmt *node = makeNode(ExplainStmt);
1448
- READ_NODE_PTR_FIELD(query, query, query);
1449
- READ_LIST_FIELD(options, options, options);
1641
+ JsonOutput *node = makeNode(JsonOutput);
1642
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
1643
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonReturning, json_returning, returning, returning, returning);
1450
1644
  return node;
1451
1645
  }
1452
1646
 
1453
- static CreateTableAsStmt *
1454
- _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg)
1647
+ static JsonKeyValue *
1648
+ _readJsonKeyValue(OUT_TYPE(JsonKeyValue, JsonKeyValue) msg)
1455
1649
  {
1456
- CreateTableAsStmt *node = makeNode(CreateTableAsStmt);
1457
- READ_NODE_PTR_FIELD(query, query, query);
1458
- READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
1459
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1460
- READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
1461
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1650
+ JsonKeyValue *node = makeNode(JsonKeyValue);
1651
+ READ_EXPR_PTR_FIELD(key, key, key);
1652
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, value, value, value);
1462
1653
  return node;
1463
1654
  }
1464
1655
 
1465
- static CreateSeqStmt *
1466
- _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg)
1656
+ static JsonObjectConstructor *
1657
+ _readJsonObjectConstructor(OUT_TYPE(JsonObjectConstructor, JsonObjectConstructor) msg)
1467
1658
  {
1468
- CreateSeqStmt *node = makeNode(CreateSeqStmt);
1469
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1470
- READ_LIST_FIELD(options, options, options);
1471
- READ_UINT_FIELD(owner_id, ownerId, ownerId);
1472
- READ_BOOL_FIELD(for_identity, for_identity, for_identity);
1473
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1659
+ JsonObjectConstructor *node = makeNode(JsonObjectConstructor);
1660
+ READ_LIST_FIELD(exprs, exprs, exprs);
1661
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1662
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1663
+ READ_BOOL_FIELD(unique, unique, unique);
1664
+ READ_INT_FIELD(location, location, location);
1474
1665
  return node;
1475
1666
  }
1476
1667
 
1477
- static AlterSeqStmt *
1478
- _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg)
1668
+ static JsonArrayConstructor *
1669
+ _readJsonArrayConstructor(OUT_TYPE(JsonArrayConstructor, JsonArrayConstructor) msg)
1479
1670
  {
1480
- AlterSeqStmt *node = makeNode(AlterSeqStmt);
1481
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
1482
- READ_LIST_FIELD(options, options, options);
1483
- READ_BOOL_FIELD(for_identity, for_identity, for_identity);
1484
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1671
+ JsonArrayConstructor *node = makeNode(JsonArrayConstructor);
1672
+ READ_LIST_FIELD(exprs, exprs, exprs);
1673
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1674
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1675
+ READ_INT_FIELD(location, location, location);
1485
1676
  return node;
1486
1677
  }
1487
1678
 
1488
- static VariableSetStmt *
1489
- _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg)
1679
+ static JsonArrayQueryConstructor *
1680
+ _readJsonArrayQueryConstructor(OUT_TYPE(JsonArrayQueryConstructor, JsonArrayQueryConstructor) msg)
1490
1681
  {
1491
- VariableSetStmt *node = makeNode(VariableSetStmt);
1492
- READ_ENUM_FIELD(VariableSetKind, kind, kind, kind);
1493
- READ_STRING_FIELD(name, name, name);
1494
- READ_LIST_FIELD(args, args, args);
1495
- READ_BOOL_FIELD(is_local, is_local, is_local);
1682
+ JsonArrayQueryConstructor *node = makeNode(JsonArrayQueryConstructor);
1683
+ READ_NODE_PTR_FIELD(query, query, query);
1684
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1685
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonFormat, json_format, format, format, format);
1686
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1687
+ READ_INT_FIELD(location, location, location);
1496
1688
  return node;
1497
1689
  }
1498
1690
 
1499
- static VariableShowStmt *
1500
- _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg)
1691
+ static JsonAggConstructor *
1692
+ _readJsonAggConstructor(OUT_TYPE(JsonAggConstructor, JsonAggConstructor) msg)
1501
1693
  {
1502
- VariableShowStmt *node = makeNode(VariableShowStmt);
1503
- READ_STRING_FIELD(name, name, name);
1694
+ JsonAggConstructor *node = makeNode(JsonAggConstructor);
1695
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonOutput, json_output, output, output, output);
1696
+ READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
1697
+ READ_LIST_FIELD(agg_order, agg_order, agg_order);
1698
+ READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
1699
+ READ_INT_FIELD(location, location, location);
1504
1700
  return node;
1505
1701
  }
1506
1702
 
1507
- static DiscardStmt *
1508
- _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg)
1703
+ static JsonObjectAgg *
1704
+ _readJsonObjectAgg(OUT_TYPE(JsonObjectAgg, JsonObjectAgg) msg)
1509
1705
  {
1510
- DiscardStmt *node = makeNode(DiscardStmt);
1511
- READ_ENUM_FIELD(DiscardMode, target, target, target);
1706
+ JsonObjectAgg *node = makeNode(JsonObjectAgg);
1707
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1708
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonKeyValue, json_key_value, arg, arg, arg);
1709
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1710
+ READ_BOOL_FIELD(unique, unique, unique);
1512
1711
  return node;
1513
1712
  }
1514
1713
 
1515
- static CreateTrigStmt *
1516
- _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg)
1714
+ static JsonArrayAgg *
1715
+ _readJsonArrayAgg(OUT_TYPE(JsonArrayAgg, JsonArrayAgg) msg)
1517
1716
  {
1518
- CreateTrigStmt *node = makeNode(CreateTrigStmt);
1519
- READ_BOOL_FIELD(replace, replace, replace);
1520
- READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
1521
- READ_STRING_FIELD(trigname, trigname, trigname);
1522
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1523
- READ_LIST_FIELD(funcname, funcname, funcname);
1524
- READ_LIST_FIELD(args, args, args);
1525
- READ_BOOL_FIELD(row, row, row);
1526
- READ_INT_FIELD(timing, timing, timing);
1527
- READ_INT_FIELD(events, events, events);
1528
- READ_LIST_FIELD(columns, columns, columns);
1529
- READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
1530
- READ_LIST_FIELD(transition_rels, transitionRels, transitionRels);
1531
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
1532
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
1533
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
1717
+ JsonArrayAgg *node = makeNode(JsonArrayAgg);
1718
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonAggConstructor, json_agg_constructor, constructor, constructor, constructor);
1719
+ READ_SPECIFIC_NODE_PTR_FIELD(JsonValueExpr, json_value_expr, arg, arg, arg);
1720
+ READ_BOOL_FIELD(absent_on_null, absent_on_null, absent_on_null);
1534
1721
  return node;
1535
1722
  }
1536
1723
 
1537
- static CreatePLangStmt *
1538
- _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg)
1724
+ static RawStmt *
1725
+ _readRawStmt(OUT_TYPE(RawStmt, RawStmt) msg)
1539
1726
  {
1540
- CreatePLangStmt *node = makeNode(CreatePLangStmt);
1541
- READ_BOOL_FIELD(replace, replace, replace);
1542
- READ_STRING_FIELD(plname, plname, plname);
1543
- READ_LIST_FIELD(plhandler, plhandler, plhandler);
1544
- READ_LIST_FIELD(plinline, plinline, plinline);
1545
- READ_LIST_FIELD(plvalidator, plvalidator, plvalidator);
1546
- READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
1727
+ RawStmt *node = makeNode(RawStmt);
1728
+ READ_NODE_PTR_FIELD(stmt, stmt, stmt);
1729
+ READ_INT_FIELD(stmt_location, stmt_location, stmt_location);
1730
+ READ_INT_FIELD(stmt_len, stmt_len, stmt_len);
1547
1731
  return node;
1548
1732
  }
1549
1733
 
1550
- static CreateRoleStmt *
1551
- _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg)
1734
+ static InsertStmt *
1735
+ _readInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) msg)
1736
+ {
1737
+ InsertStmt *node = makeNode(InsertStmt);
1738
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1739
+ READ_LIST_FIELD(cols, cols, cols);
1740
+ READ_NODE_PTR_FIELD(select_stmt, selectStmt, selectStmt);
1741
+ READ_SPECIFIC_NODE_PTR_FIELD(OnConflictClause, on_conflict_clause, on_conflict_clause, onConflictClause, onConflictClause);
1742
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1743
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1744
+ READ_ENUM_FIELD(OverridingKind, override, override, override);
1745
+ return node;
1746
+ }
1747
+
1748
+ static DeleteStmt *
1749
+ _readDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) msg)
1552
1750
  {
1553
- CreateRoleStmt *node = makeNode(CreateRoleStmt);
1554
- READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
1555
- READ_STRING_FIELD(role, role, role);
1556
- READ_LIST_FIELD(options, options, options);
1751
+ DeleteStmt *node = makeNode(DeleteStmt);
1752
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1753
+ READ_LIST_FIELD(using_clause, usingClause, usingClause);
1754
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1755
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1756
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1557
1757
  return node;
1558
1758
  }
1559
1759
 
1560
- static AlterRoleStmt *
1561
- _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg)
1760
+ static UpdateStmt *
1761
+ _readUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) msg)
1562
1762
  {
1563
- AlterRoleStmt *node = makeNode(AlterRoleStmt);
1564
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1565
- READ_LIST_FIELD(options, options, options);
1566
- READ_INT_FIELD(action, action, action);
1763
+ UpdateStmt *node = makeNode(UpdateStmt);
1764
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1765
+ READ_LIST_FIELD(target_list, targetList, targetList);
1766
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1767
+ READ_LIST_FIELD(from_clause, fromClause, fromClause);
1768
+ READ_LIST_FIELD(returning_list, returningList, returningList);
1769
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1567
1770
  return node;
1568
1771
  }
1569
1772
 
1570
- static DropRoleStmt *
1571
- _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg)
1773
+ static MergeStmt *
1774
+ _readMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) msg)
1572
1775
  {
1573
- DropRoleStmt *node = makeNode(DropRoleStmt);
1574
- READ_LIST_FIELD(roles, roles, roles);
1575
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1776
+ MergeStmt *node = makeNode(MergeStmt);
1777
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1778
+ READ_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation);
1779
+ READ_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition);
1780
+ READ_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses);
1781
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1576
1782
  return node;
1577
1783
  }
1578
1784
 
1579
- static LockStmt *
1580
- _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg)
1785
+ static SelectStmt *
1786
+ _readSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) msg)
1581
1787
  {
1582
- LockStmt *node = makeNode(LockStmt);
1583
- READ_LIST_FIELD(relations, relations, relations);
1584
- READ_INT_FIELD(mode, mode, mode);
1585
- READ_BOOL_FIELD(nowait, nowait, nowait);
1788
+ SelectStmt *node = makeNode(SelectStmt);
1789
+ READ_LIST_FIELD(distinct_clause, distinctClause, distinctClause);
1790
+ READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into_clause, intoClause, intoClause);
1791
+ READ_LIST_FIELD(target_list, targetList, targetList);
1792
+ READ_LIST_FIELD(from_clause, fromClause, fromClause);
1793
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1794
+ READ_LIST_FIELD(group_clause, groupClause, groupClause);
1795
+ READ_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
1796
+ READ_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
1797
+ READ_LIST_FIELD(window_clause, windowClause, windowClause);
1798
+ READ_LIST_FIELD(values_lists, valuesLists, valuesLists);
1799
+ READ_LIST_FIELD(sort_clause, sortClause, sortClause);
1800
+ READ_NODE_PTR_FIELD(limit_offset, limitOffset, limitOffset);
1801
+ READ_NODE_PTR_FIELD(limit_count, limitCount, limitCount);
1802
+ READ_ENUM_FIELD(LimitOption, limit_option, limitOption, limitOption);
1803
+ READ_LIST_FIELD(locking_clause, lockingClause, lockingClause);
1804
+ READ_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
1805
+ READ_ENUM_FIELD(SetOperation, op, op, op);
1806
+ READ_BOOL_FIELD(all, all, all);
1807
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, larg, larg, larg);
1808
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
1586
1809
  return node;
1587
1810
  }
1588
1811
 
1589
- static ConstraintsSetStmt *
1590
- _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg)
1812
+ static SetOperationStmt *
1813
+ _readSetOperationStmt(OUT_TYPE(SetOperationStmt, SetOperationStmt) msg)
1591
1814
  {
1592
- ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt);
1593
- READ_LIST_FIELD(constraints, constraints, constraints);
1594
- READ_BOOL_FIELD(deferred, deferred, deferred);
1815
+ SetOperationStmt *node = makeNode(SetOperationStmt);
1816
+ READ_ENUM_FIELD(SetOperation, op, op, op);
1817
+ READ_BOOL_FIELD(all, all, all);
1818
+ READ_NODE_PTR_FIELD(larg, larg, larg);
1819
+ READ_NODE_PTR_FIELD(rarg, rarg, rarg);
1820
+ READ_LIST_FIELD(col_types, colTypes, colTypes);
1821
+ READ_LIST_FIELD(col_typmods, colTypmods, colTypmods);
1822
+ READ_LIST_FIELD(col_collations, colCollations, colCollations);
1823
+ READ_LIST_FIELD(group_clauses, groupClauses, groupClauses);
1595
1824
  return node;
1596
1825
  }
1597
1826
 
1598
- static ReindexStmt *
1599
- _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg)
1827
+ static ReturnStmt *
1828
+ _readReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) msg)
1600
1829
  {
1601
- ReindexStmt *node = makeNode(ReindexStmt);
1602
- READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
1603
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1604
- READ_STRING_FIELD(name, name, name);
1605
- READ_LIST_FIELD(params, params, params);
1830
+ ReturnStmt *node = makeNode(ReturnStmt);
1831
+ READ_NODE_PTR_FIELD(returnval, returnval, returnval);
1606
1832
  return node;
1607
1833
  }
1608
1834
 
1609
- static CheckPointStmt *
1610
- _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg)
1835
+ static PLAssignStmt *
1836
+ _readPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) msg)
1611
1837
  {
1612
- CheckPointStmt *node = makeNode(CheckPointStmt);
1838
+ PLAssignStmt *node = makeNode(PLAssignStmt);
1839
+ READ_STRING_FIELD(name, name, name);
1840
+ READ_LIST_FIELD(indirection, indirection, indirection);
1841
+ READ_INT_FIELD(nnames, nnames, nnames);
1842
+ READ_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val);
1843
+ READ_INT_FIELD(location, location, location);
1613
1844
  return node;
1614
1845
  }
1615
1846
 
@@ -1624,133 +1855,207 @@ _readCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) msg)
1624
1855
  return node;
1625
1856
  }
1626
1857
 
1627
- static AlterDatabaseStmt *
1628
- _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg)
1858
+ static AlterTableStmt *
1859
+ _readAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) msg)
1629
1860
  {
1630
- AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt);
1631
- READ_STRING_FIELD(dbname, dbname, dbname);
1632
- READ_LIST_FIELD(options, options, options);
1861
+ AlterTableStmt *node = makeNode(AlterTableStmt);
1862
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1863
+ READ_LIST_FIELD(cmds, cmds, cmds);
1864
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1865
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1633
1866
  return node;
1634
1867
  }
1635
1868
 
1636
- static AlterDatabaseRefreshCollStmt *
1637
- _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg)
1869
+ static ReplicaIdentityStmt *
1870
+ _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg)
1638
1871
  {
1639
- AlterDatabaseRefreshCollStmt *node = makeNode(AlterDatabaseRefreshCollStmt);
1640
- READ_STRING_FIELD(dbname, dbname, dbname);
1872
+ ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt);
1873
+ READ_CHAR_FIELD(identity_type, identity_type, identity_type);
1874
+ READ_STRING_FIELD(name, name, name);
1641
1875
  return node;
1642
1876
  }
1643
1877
 
1644
- static AlterDatabaseSetStmt *
1645
- _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg)
1878
+ static AlterTableCmd *
1879
+ _readAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) msg)
1646
1880
  {
1647
- AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt);
1648
- READ_STRING_FIELD(dbname, dbname, dbname);
1649
- READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1881
+ AlterTableCmd *node = makeNode(AlterTableCmd);
1882
+ READ_ENUM_FIELD(AlterTableType, subtype, subtype, subtype);
1883
+ READ_STRING_FIELD(name, name, name);
1884
+ READ_INT_FIELD(num, num, num);
1885
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1886
+ READ_NODE_PTR_FIELD(def, def, def);
1887
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1888
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1889
+ READ_BOOL_FIELD(recurse, recurse, recurse);
1650
1890
  return node;
1651
1891
  }
1652
1892
 
1653
- static AlterRoleSetStmt *
1654
- _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg)
1893
+ static AlterCollationStmt *
1894
+ _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg)
1655
1895
  {
1656
- AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt);
1657
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
1658
- READ_STRING_FIELD(database, database, database);
1659
- READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
1896
+ AlterCollationStmt *node = makeNode(AlterCollationStmt);
1897
+ READ_LIST_FIELD(collname, collname, collname);
1660
1898
  return node;
1661
1899
  }
1662
1900
 
1663
- static CreateConversionStmt *
1664
- _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg)
1901
+ static AlterDomainStmt *
1902
+ _readAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) msg)
1665
1903
  {
1666
- CreateConversionStmt *node = makeNode(CreateConversionStmt);
1667
- READ_LIST_FIELD(conversion_name, conversion_name, conversion_name);
1668
- READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
1669
- READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
1670
- READ_LIST_FIELD(func_name, func_name, func_name);
1671
- READ_BOOL_FIELD(def, def, def);
1904
+ AlterDomainStmt *node = makeNode(AlterDomainStmt);
1905
+ READ_CHAR_FIELD(subtype, subtype, subtype);
1906
+ READ_LIST_FIELD(type_name, typeName, typeName);
1907
+ READ_STRING_FIELD(name, name, name);
1908
+ READ_NODE_PTR_FIELD(def, def, def);
1909
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1910
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1672
1911
  return node;
1673
1912
  }
1674
1913
 
1675
- static CreateCastStmt *
1676
- _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg)
1914
+ static GrantStmt *
1915
+ _readGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) msg)
1677
1916
  {
1678
- CreateCastStmt *node = makeNode(CreateCastStmt);
1679
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
1680
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
1681
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
1682
- READ_ENUM_FIELD(CoercionContext, context, context, context);
1683
- READ_BOOL_FIELD(inout, inout, inout);
1917
+ GrantStmt *node = makeNode(GrantStmt);
1918
+ READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1919
+ READ_ENUM_FIELD(GrantTargetType, targtype, targtype, targtype);
1920
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1921
+ READ_LIST_FIELD(objects, objects, objects);
1922
+ READ_LIST_FIELD(privileges, privileges, privileges);
1923
+ READ_LIST_FIELD(grantees, grantees, grantees);
1924
+ READ_BOOL_FIELD(grant_option, grant_option, grant_option);
1925
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1926
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1684
1927
  return node;
1685
1928
  }
1686
1929
 
1687
- static CreateOpClassStmt *
1688
- _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg)
1930
+ static ObjectWithArgs *
1931
+ _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg)
1689
1932
  {
1690
- CreateOpClassStmt *node = makeNode(CreateOpClassStmt);
1691
- READ_LIST_FIELD(opclassname, opclassname, opclassname);
1692
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1693
- READ_STRING_FIELD(amname, amname, amname);
1694
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
1695
- READ_LIST_FIELD(items, items, items);
1696
- READ_BOOL_FIELD(is_default, isDefault, isDefault);
1933
+ ObjectWithArgs *node = makeNode(ObjectWithArgs);
1934
+ READ_LIST_FIELD(objname, objname, objname);
1935
+ READ_LIST_FIELD(objargs, objargs, objargs);
1936
+ READ_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs);
1937
+ READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
1697
1938
  return node;
1698
1939
  }
1699
1940
 
1700
- static CreateOpFamilyStmt *
1701
- _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg)
1941
+ static AccessPriv *
1942
+ _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg)
1702
1943
  {
1703
- CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt);
1704
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1705
- READ_STRING_FIELD(amname, amname, amname);
1944
+ AccessPriv *node = makeNode(AccessPriv);
1945
+ READ_STRING_FIELD(priv_name, priv_name, priv_name);
1946
+ READ_LIST_FIELD(cols, cols, cols);
1706
1947
  return node;
1707
1948
  }
1708
1949
 
1709
- static AlterOpFamilyStmt *
1710
- _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg)
1950
+ static GrantRoleStmt *
1951
+ _readGrantRoleStmt(OUT_TYPE(GrantRoleStmt, GrantRoleStmt) msg)
1711
1952
  {
1712
- AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt);
1713
- READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
1714
- READ_STRING_FIELD(amname, amname, amname);
1715
- READ_BOOL_FIELD(is_drop, isDrop, isDrop);
1716
- READ_LIST_FIELD(items, items, items);
1953
+ GrantRoleStmt *node = makeNode(GrantRoleStmt);
1954
+ READ_LIST_FIELD(granted_roles, granted_roles, granted_roles);
1955
+ READ_LIST_FIELD(grantee_roles, grantee_roles, grantee_roles);
1956
+ READ_BOOL_FIELD(is_grant, is_grant, is_grant);
1957
+ READ_LIST_FIELD(opt, opt, opt);
1958
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
1959
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1960
+ return node;
1961
+ }
1962
+
1963
+ static AlterDefaultPrivilegesStmt *
1964
+ _readAlterDefaultPrivilegesStmt(OUT_TYPE(AlterDefaultPrivilegesStmt, AlterDefaultPrivilegesStmt) msg)
1965
+ {
1966
+ AlterDefaultPrivilegesStmt *node = makeNode(AlterDefaultPrivilegesStmt);
1967
+ READ_LIST_FIELD(options, options, options);
1968
+ READ_SPECIFIC_NODE_PTR_FIELD(GrantStmt, grant_stmt, action, action, action);
1969
+ return node;
1970
+ }
1971
+
1972
+ static CopyStmt *
1973
+ _readCopyStmt(OUT_TYPE(CopyStmt, CopyStmt) msg)
1974
+ {
1975
+ CopyStmt *node = makeNode(CopyStmt);
1976
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1977
+ READ_NODE_PTR_FIELD(query, query, query);
1978
+ READ_LIST_FIELD(attlist, attlist, attlist);
1979
+ READ_BOOL_FIELD(is_from, is_from, is_from);
1980
+ READ_BOOL_FIELD(is_program, is_program, is_program);
1981
+ READ_STRING_FIELD(filename, filename, filename);
1982
+ READ_LIST_FIELD(options, options, options);
1983
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
1717
1984
  return node;
1718
1985
  }
1719
1986
 
1720
- static PrepareStmt *
1721
- _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg)
1987
+ static VariableSetStmt *
1988
+ _readVariableSetStmt(OUT_TYPE(VariableSetStmt, VariableSetStmt) msg)
1722
1989
  {
1723
- PrepareStmt *node = makeNode(PrepareStmt);
1990
+ VariableSetStmt *node = makeNode(VariableSetStmt);
1991
+ READ_ENUM_FIELD(VariableSetKind, kind, kind, kind);
1724
1992
  READ_STRING_FIELD(name, name, name);
1725
- READ_LIST_FIELD(argtypes, argtypes, argtypes);
1726
- READ_NODE_PTR_FIELD(query, query, query);
1993
+ READ_LIST_FIELD(args, args, args);
1994
+ READ_BOOL_FIELD(is_local, is_local, is_local);
1727
1995
  return node;
1728
1996
  }
1729
1997
 
1730
- static ExecuteStmt *
1731
- _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg)
1998
+ static VariableShowStmt *
1999
+ _readVariableShowStmt(OUT_TYPE(VariableShowStmt, VariableShowStmt) msg)
1732
2000
  {
1733
- ExecuteStmt *node = makeNode(ExecuteStmt);
2001
+ VariableShowStmt *node = makeNode(VariableShowStmt);
1734
2002
  READ_STRING_FIELD(name, name, name);
1735
- READ_LIST_FIELD(params, params, params);
1736
2003
  return node;
1737
2004
  }
1738
2005
 
1739
- static DeallocateStmt *
1740
- _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg)
2006
+ static CreateStmt *
2007
+ _readCreateStmt(OUT_TYPE(CreateStmt, CreateStmt) msg)
1741
2008
  {
1742
- DeallocateStmt *node = makeNode(DeallocateStmt);
1743
- READ_STRING_FIELD(name, name, name);
2009
+ CreateStmt *node = makeNode(CreateStmt);
2010
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2011
+ READ_LIST_FIELD(table_elts, tableElts, tableElts);
2012
+ READ_LIST_FIELD(inh_relations, inhRelations, inhRelations);
2013
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, partbound, partbound, partbound);
2014
+ READ_SPECIFIC_NODE_PTR_FIELD(PartitionSpec, partition_spec, partspec, partspec, partspec);
2015
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, of_typename, ofTypename, ofTypename);
2016
+ READ_LIST_FIELD(constraints, constraints, constraints);
2017
+ READ_LIST_FIELD(options, options, options);
2018
+ READ_ENUM_FIELD(OnCommitAction, oncommit, oncommit, oncommit);
2019
+ READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
2020
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
2021
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1744
2022
  return node;
1745
2023
  }
1746
2024
 
1747
- static DeclareCursorStmt *
1748
- _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg)
2025
+ static Constraint *
2026
+ _readConstraint(OUT_TYPE(Constraint, Constraint) msg)
1749
2027
  {
1750
- DeclareCursorStmt *node = makeNode(DeclareCursorStmt);
1751
- READ_STRING_FIELD(portalname, portalname, portalname);
1752
- READ_INT_FIELD(options, options, options);
1753
- READ_NODE_PTR_FIELD(query, query, query);
2028
+ Constraint *node = makeNode(Constraint);
2029
+ READ_ENUM_FIELD(ConstrType, contype, contype, contype);
2030
+ READ_STRING_FIELD(conname, conname, conname);
2031
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2032
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2033
+ READ_INT_FIELD(location, location, location);
2034
+ READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
2035
+ READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
2036
+ READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
2037
+ READ_CHAR_FIELD(generated_when, generated_when, generated_when);
2038
+ READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2039
+ READ_LIST_FIELD(keys, keys, keys);
2040
+ READ_LIST_FIELD(including, including, including);
2041
+ READ_LIST_FIELD(exclusions, exclusions, exclusions);
2042
+ READ_LIST_FIELD(options, options, options);
2043
+ READ_STRING_FIELD(indexname, indexname, indexname);
2044
+ READ_STRING_FIELD(indexspace, indexspace, indexspace);
2045
+ READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2046
+ READ_STRING_FIELD(access_method, access_method, access_method);
2047
+ READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
2048
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
2049
+ READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
2050
+ READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
2051
+ READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
2052
+ READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
2053
+ READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
2054
+ READ_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols);
2055
+ READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
2056
+ READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
2057
+ READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
2058
+ READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
1754
2059
  return node;
1755
2060
  }
1756
2061
 
@@ -1774,137 +2079,55 @@ _readDropTableSpaceStmt(OUT_TYPE(DropTableSpaceStmt, DropTableSpaceStmt) msg)
1774
2079
  return node;
1775
2080
  }
1776
2081
 
1777
- static AlterObjectDependsStmt *
1778
- _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg)
1779
- {
1780
- AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt);
1781
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1782
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1783
- READ_NODE_PTR_FIELD(object, object, object);
1784
- READ_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname);
1785
- READ_BOOL_FIELD(remove, remove, remove);
1786
- return node;
1787
- }
1788
-
1789
- static AlterObjectSchemaStmt *
1790
- _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg)
1791
- {
1792
- AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt);
1793
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1794
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1795
- READ_NODE_PTR_FIELD(object, object, object);
1796
- READ_STRING_FIELD(newschema, newschema, newschema);
1797
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1798
- return node;
1799
- }
1800
-
1801
- static AlterOwnerStmt *
1802
- _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg)
1803
- {
1804
- AlterOwnerStmt *node = makeNode(AlterOwnerStmt);
1805
- READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
1806
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
1807
- READ_NODE_PTR_FIELD(object, object, object);
1808
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
1809
- return node;
1810
- }
1811
-
1812
- static AlterOperatorStmt *
1813
- _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg)
1814
- {
1815
- AlterOperatorStmt *node = makeNode(AlterOperatorStmt);
1816
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
1817
- READ_LIST_FIELD(options, options, options);
1818
- return node;
1819
- }
1820
-
1821
- static AlterTypeStmt *
1822
- _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg)
2082
+ static AlterTableSpaceOptionsStmt *
2083
+ _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg)
1823
2084
  {
1824
- AlterTypeStmt *node = makeNode(AlterTypeStmt);
1825
- READ_LIST_FIELD(type_name, typeName, typeName);
2085
+ AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt);
2086
+ READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1826
2087
  READ_LIST_FIELD(options, options, options);
2088
+ READ_BOOL_FIELD(is_reset, isReset, isReset);
1827
2089
  return node;
1828
2090
  }
1829
2091
 
1830
- static DropOwnedStmt *
1831
- _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg)
1832
- {
1833
- DropOwnedStmt *node = makeNode(DropOwnedStmt);
1834
- READ_LIST_FIELD(roles, roles, roles);
1835
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
1836
- return node;
1837
- }
1838
-
1839
- static ReassignOwnedStmt *
1840
- _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg)
2092
+ static AlterTableMoveAllStmt *
2093
+ _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg)
1841
2094
  {
1842
- ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt);
2095
+ AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt);
2096
+ READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
2097
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
1843
2098
  READ_LIST_FIELD(roles, roles, roles);
1844
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
1845
- return node;
1846
- }
1847
-
1848
- static CompositeTypeStmt *
1849
- _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg)
1850
- {
1851
- CompositeTypeStmt *node = makeNode(CompositeTypeStmt);
1852
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
1853
- READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
1854
- return node;
1855
- }
1856
-
1857
- static CreateEnumStmt *
1858
- _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg)
1859
- {
1860
- CreateEnumStmt *node = makeNode(CreateEnumStmt);
1861
- READ_LIST_FIELD(type_name, typeName, typeName);
1862
- READ_LIST_FIELD(vals, vals, vals);
1863
- return node;
1864
- }
1865
-
1866
- static CreateRangeStmt *
1867
- _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg)
1868
- {
1869
- CreateRangeStmt *node = makeNode(CreateRangeStmt);
1870
- READ_LIST_FIELD(type_name, typeName, typeName);
1871
- READ_LIST_FIELD(params, params, params);
2099
+ READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
2100
+ READ_BOOL_FIELD(nowait, nowait, nowait);
1872
2101
  return node;
1873
2102
  }
1874
2103
 
1875
- static AlterEnumStmt *
1876
- _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg)
2104
+ static CreateExtensionStmt *
2105
+ _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg)
1877
2106
  {
1878
- AlterEnumStmt *node = makeNode(AlterEnumStmt);
1879
- READ_LIST_FIELD(type_name, typeName, typeName);
1880
- READ_STRING_FIELD(old_val, oldVal, oldVal);
1881
- READ_STRING_FIELD(new_val, newVal, newVal);
1882
- READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
1883
- READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
1884
- READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2107
+ CreateExtensionStmt *node = makeNode(CreateExtensionStmt);
2108
+ READ_STRING_FIELD(extname, extname, extname);
2109
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2110
+ READ_LIST_FIELD(options, options, options);
1885
2111
  return node;
1886
2112
  }
1887
2113
 
1888
- static AlterTSDictionaryStmt *
1889
- _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg)
2114
+ static AlterExtensionStmt *
2115
+ _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg)
1890
2116
  {
1891
- AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt);
1892
- READ_LIST_FIELD(dictname, dictname, dictname);
2117
+ AlterExtensionStmt *node = makeNode(AlterExtensionStmt);
2118
+ READ_STRING_FIELD(extname, extname, extname);
1893
2119
  READ_LIST_FIELD(options, options, options);
1894
2120
  return node;
1895
2121
  }
1896
2122
 
1897
- static AlterTSConfigurationStmt *
1898
- _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg)
2123
+ static AlterExtensionContentsStmt *
2124
+ _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg)
1899
2125
  {
1900
- AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt);
1901
- READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
1902
- READ_LIST_FIELD(cfgname, cfgname, cfgname);
1903
- READ_LIST_FIELD(tokentype, tokentype, tokentype);
1904
- READ_LIST_FIELD(dicts, dicts, dicts);
1905
- READ_BOOL_FIELD(override, override, override);
1906
- READ_BOOL_FIELD(replace, replace, replace);
1907
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2126
+ AlterExtensionContentsStmt *node = makeNode(AlterExtensionContentsStmt);
2127
+ READ_STRING_FIELD(extname, extname, extname);
2128
+ READ_INT_FIELD(action, action, action);
2129
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2130
+ READ_NODE_PTR_FIELD(object, object, object);
1908
2131
  return node;
1909
2132
  }
1910
2133
 
@@ -1952,78 +2175,45 @@ _readAlterForeignServerStmt(OUT_TYPE(AlterForeignServerStmt, AlterForeignServerS
1952
2175
  return node;
1953
2176
  }
1954
2177
 
1955
- static CreateUserMappingStmt *
1956
- _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg)
1957
- {
1958
- CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt);
1959
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
1960
- READ_STRING_FIELD(servername, servername, servername);
1961
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
1962
- READ_LIST_FIELD(options, options, options);
1963
- return node;
1964
- }
1965
-
1966
- static AlterUserMappingStmt *
1967
- _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg)
1968
- {
1969
- AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt);
1970
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
1971
- READ_STRING_FIELD(servername, servername, servername);
1972
- READ_LIST_FIELD(options, options, options);
1973
- return node;
1974
- }
1975
-
1976
- static DropUserMappingStmt *
1977
- _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg)
2178
+ static CreateForeignTableStmt *
2179
+ _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg)
1978
2180
  {
1979
- DropUserMappingStmt *node = makeNode(DropUserMappingStmt);
1980
- READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2181
+ CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt);
2182
+ READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
1981
2183
  READ_STRING_FIELD(servername, servername, servername);
1982
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
1983
- return node;
1984
- }
1985
-
1986
- static AlterTableSpaceOptionsStmt *
1987
- _readAlterTableSpaceOptionsStmt(OUT_TYPE(AlterTableSpaceOptionsStmt, AlterTableSpaceOptionsStmt) msg)
1988
- {
1989
- AlterTableSpaceOptionsStmt *node = makeNode(AlterTableSpaceOptionsStmt);
1990
- READ_STRING_FIELD(tablespacename, tablespacename, tablespacename);
1991
2184
  READ_LIST_FIELD(options, options, options);
1992
- READ_BOOL_FIELD(is_reset, isReset, isReset);
2185
+ NodeSetTag(node, T_CreateForeignTableStmt);
1993
2186
  return node;
1994
2187
  }
1995
2188
 
1996
- static AlterTableMoveAllStmt *
1997
- _readAlterTableMoveAllStmt(OUT_TYPE(AlterTableMoveAllStmt, AlterTableMoveAllStmt) msg)
2189
+ static CreateUserMappingStmt *
2190
+ _readCreateUserMappingStmt(OUT_TYPE(CreateUserMappingStmt, CreateUserMappingStmt) msg)
1998
2191
  {
1999
- AlterTableMoveAllStmt *node = makeNode(AlterTableMoveAllStmt);
2000
- READ_STRING_FIELD(orig_tablespacename, orig_tablespacename, orig_tablespacename);
2001
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2002
- READ_LIST_FIELD(roles, roles, roles);
2003
- READ_STRING_FIELD(new_tablespacename, new_tablespacename, new_tablespacename);
2004
- READ_BOOL_FIELD(nowait, nowait, nowait);
2192
+ CreateUserMappingStmt *node = makeNode(CreateUserMappingStmt);
2193
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2194
+ READ_STRING_FIELD(servername, servername, servername);
2195
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2196
+ READ_LIST_FIELD(options, options, options);
2005
2197
  return node;
2006
2198
  }
2007
2199
 
2008
- static SecLabelStmt *
2009
- _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg)
2200
+ static AlterUserMappingStmt *
2201
+ _readAlterUserMappingStmt(OUT_TYPE(AlterUserMappingStmt, AlterUserMappingStmt) msg)
2010
2202
  {
2011
- SecLabelStmt *node = makeNode(SecLabelStmt);
2012
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2013
- READ_NODE_PTR_FIELD(object, object, object);
2014
- READ_STRING_FIELD(provider, provider, provider);
2015
- READ_STRING_FIELD(label, label, label);
2203
+ AlterUserMappingStmt *node = makeNode(AlterUserMappingStmt);
2204
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2205
+ READ_STRING_FIELD(servername, servername, servername);
2206
+ READ_LIST_FIELD(options, options, options);
2016
2207
  return node;
2017
2208
  }
2018
2209
 
2019
- static CreateForeignTableStmt *
2020
- _readCreateForeignTableStmt(OUT_TYPE(CreateForeignTableStmt, CreateForeignTableStmt) msg)
2210
+ static DropUserMappingStmt *
2211
+ _readDropUserMappingStmt(OUT_TYPE(DropUserMappingStmt, DropUserMappingStmt) msg)
2021
2212
  {
2022
- CreateForeignTableStmt *node = makeNode(CreateForeignTableStmt);
2023
- READ_SPECIFIC_NODE_FIELD(CreateStmt, create_stmt, base_stmt, base, base);
2213
+ DropUserMappingStmt *node = makeNode(DropUserMappingStmt);
2214
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, user, user, user);
2024
2215
  READ_STRING_FIELD(servername, servername, servername);
2025
- READ_LIST_FIELD(options, options, options);
2026
- NodeSetTag(node, T_CreateForeignTableStmt);
2216
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2027
2217
  return node;
2028
2218
  }
2029
2219
 
@@ -2040,33 +2230,61 @@ _readImportForeignSchemaStmt(OUT_TYPE(ImportForeignSchemaStmt, ImportForeignSche
2040
2230
  return node;
2041
2231
  }
2042
2232
 
2043
- static CreateExtensionStmt *
2044
- _readCreateExtensionStmt(OUT_TYPE(CreateExtensionStmt, CreateExtensionStmt) msg)
2233
+ static CreatePolicyStmt *
2234
+ _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg)
2045
2235
  {
2046
- CreateExtensionStmt *node = makeNode(CreateExtensionStmt);
2047
- READ_STRING_FIELD(extname, extname, extname);
2048
- READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2049
- READ_LIST_FIELD(options, options, options);
2236
+ CreatePolicyStmt *node = makeNode(CreatePolicyStmt);
2237
+ READ_STRING_FIELD(policy_name, policy_name, policy_name);
2238
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2239
+ READ_STRING_FIELD(cmd_name, cmd_name, cmd_name);
2240
+ READ_BOOL_FIELD(permissive, permissive, permissive);
2241
+ READ_LIST_FIELD(roles, roles, roles);
2242
+ READ_NODE_PTR_FIELD(qual, qual, qual);
2243
+ READ_NODE_PTR_FIELD(with_check, with_check, with_check);
2050
2244
  return node;
2051
2245
  }
2052
2246
 
2053
- static AlterExtensionStmt *
2054
- _readAlterExtensionStmt(OUT_TYPE(AlterExtensionStmt, AlterExtensionStmt) msg)
2247
+ static AlterPolicyStmt *
2248
+ _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg)
2055
2249
  {
2056
- AlterExtensionStmt *node = makeNode(AlterExtensionStmt);
2057
- READ_STRING_FIELD(extname, extname, extname);
2058
- READ_LIST_FIELD(options, options, options);
2250
+ AlterPolicyStmt *node = makeNode(AlterPolicyStmt);
2251
+ READ_STRING_FIELD(policy_name, policy_name, policy_name);
2252
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2253
+ READ_LIST_FIELD(roles, roles, roles);
2254
+ READ_NODE_PTR_FIELD(qual, qual, qual);
2255
+ READ_NODE_PTR_FIELD(with_check, with_check, with_check);
2059
2256
  return node;
2060
2257
  }
2061
2258
 
2062
- static AlterExtensionContentsStmt *
2063
- _readAlterExtensionContentsStmt(OUT_TYPE(AlterExtensionContentsStmt, AlterExtensionContentsStmt) msg)
2259
+ static CreateAmStmt *
2260
+ _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg)
2064
2261
  {
2065
- AlterExtensionContentsStmt *node = makeNode(AlterExtensionContentsStmt);
2066
- READ_STRING_FIELD(extname, extname, extname);
2067
- READ_INT_FIELD(action, action, action);
2068
- READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2069
- READ_NODE_PTR_FIELD(object, object, object);
2262
+ CreateAmStmt *node = makeNode(CreateAmStmt);
2263
+ READ_STRING_FIELD(amname, amname, amname);
2264
+ READ_LIST_FIELD(handler_name, handler_name, handler_name);
2265
+ READ_CHAR_FIELD(amtype, amtype, amtype);
2266
+ return node;
2267
+ }
2268
+
2269
+ static CreateTrigStmt *
2270
+ _readCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) msg)
2271
+ {
2272
+ CreateTrigStmt *node = makeNode(CreateTrigStmt);
2273
+ READ_BOOL_FIELD(replace, replace, replace);
2274
+ READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2275
+ READ_STRING_FIELD(trigname, trigname, trigname);
2276
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2277
+ READ_LIST_FIELD(funcname, funcname, funcname);
2278
+ READ_LIST_FIELD(args, args, args);
2279
+ READ_BOOL_FIELD(row, row, row);
2280
+ READ_INT_FIELD(timing, timing, timing);
2281
+ READ_INT_FIELD(events, events, events);
2282
+ READ_LIST_FIELD(columns, columns, columns);
2283
+ READ_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
2284
+ READ_LIST_FIELD(transition_rels, transitionRels, transitionRels);
2285
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2286
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2287
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, constrrel, constrrel, constrrel);
2070
2288
  return node;
2071
2289
  }
2072
2290
 
@@ -2090,134 +2308,252 @@ _readAlterEventTrigStmt(OUT_TYPE(AlterEventTrigStmt, AlterEventTrigStmt) msg)
2090
2308
  return node;
2091
2309
  }
2092
2310
 
2093
- static RefreshMatViewStmt *
2094
- _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg)
2311
+ static CreatePLangStmt *
2312
+ _readCreatePLangStmt(OUT_TYPE(CreatePLangStmt, CreatePLangStmt) msg)
2095
2313
  {
2096
- RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt);
2097
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2098
- READ_BOOL_FIELD(skip_data, skipData, skipData);
2099
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2314
+ CreatePLangStmt *node = makeNode(CreatePLangStmt);
2315
+ READ_BOOL_FIELD(replace, replace, replace);
2316
+ READ_STRING_FIELD(plname, plname, plname);
2317
+ READ_LIST_FIELD(plhandler, plhandler, plhandler);
2318
+ READ_LIST_FIELD(plinline, plinline, plinline);
2319
+ READ_LIST_FIELD(plvalidator, plvalidator, plvalidator);
2320
+ READ_BOOL_FIELD(pltrusted, pltrusted, pltrusted);
2100
2321
  return node;
2101
2322
  }
2102
2323
 
2103
- static ReplicaIdentityStmt *
2104
- _readReplicaIdentityStmt(OUT_TYPE(ReplicaIdentityStmt, ReplicaIdentityStmt) msg)
2324
+ static CreateRoleStmt *
2325
+ _readCreateRoleStmt(OUT_TYPE(CreateRoleStmt, CreateRoleStmt) msg)
2105
2326
  {
2106
- ReplicaIdentityStmt *node = makeNode(ReplicaIdentityStmt);
2107
- READ_CHAR_FIELD(identity_type, identity_type, identity_type);
2108
- READ_STRING_FIELD(name, name, name);
2327
+ CreateRoleStmt *node = makeNode(CreateRoleStmt);
2328
+ READ_ENUM_FIELD(RoleStmtType, stmt_type, stmt_type, stmt_type);
2329
+ READ_STRING_FIELD(role, role, role);
2330
+ READ_LIST_FIELD(options, options, options);
2109
2331
  return node;
2110
2332
  }
2111
2333
 
2112
- static AlterSystemStmt *
2113
- _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg)
2334
+ static AlterRoleStmt *
2335
+ _readAlterRoleStmt(OUT_TYPE(AlterRoleStmt, AlterRoleStmt) msg)
2114
2336
  {
2115
- AlterSystemStmt *node = makeNode(AlterSystemStmt);
2337
+ AlterRoleStmt *node = makeNode(AlterRoleStmt);
2338
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
2339
+ READ_LIST_FIELD(options, options, options);
2340
+ READ_INT_FIELD(action, action, action);
2341
+ return node;
2342
+ }
2343
+
2344
+ static AlterRoleSetStmt *
2345
+ _readAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) msg)
2346
+ {
2347
+ AlterRoleSetStmt *node = makeNode(AlterRoleSetStmt);
2348
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, role, role, role);
2349
+ READ_STRING_FIELD(database, database, database);
2116
2350
  READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2117
2351
  return node;
2118
2352
  }
2119
2353
 
2120
- static CreatePolicyStmt *
2121
- _readCreatePolicyStmt(OUT_TYPE(CreatePolicyStmt, CreatePolicyStmt) msg)
2354
+ static DropRoleStmt *
2355
+ _readDropRoleStmt(OUT_TYPE(DropRoleStmt, DropRoleStmt) msg)
2122
2356
  {
2123
- CreatePolicyStmt *node = makeNode(CreatePolicyStmt);
2124
- READ_STRING_FIELD(policy_name, policy_name, policy_name);
2125
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2126
- READ_STRING_FIELD(cmd_name, cmd_name, cmd_name);
2127
- READ_BOOL_FIELD(permissive, permissive, permissive);
2357
+ DropRoleStmt *node = makeNode(DropRoleStmt);
2128
2358
  READ_LIST_FIELD(roles, roles, roles);
2129
- READ_NODE_PTR_FIELD(qual, qual, qual);
2130
- READ_NODE_PTR_FIELD(with_check, with_check, with_check);
2359
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2131
2360
  return node;
2132
2361
  }
2133
2362
 
2134
- static AlterPolicyStmt *
2135
- _readAlterPolicyStmt(OUT_TYPE(AlterPolicyStmt, AlterPolicyStmt) msg)
2363
+ static CreateSeqStmt *
2364
+ _readCreateSeqStmt(OUT_TYPE(CreateSeqStmt, CreateSeqStmt) msg)
2365
+ {
2366
+ CreateSeqStmt *node = makeNode(CreateSeqStmt);
2367
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2368
+ READ_LIST_FIELD(options, options, options);
2369
+ READ_UINT_FIELD(owner_id, ownerId, ownerId);
2370
+ READ_BOOL_FIELD(for_identity, for_identity, for_identity);
2371
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2372
+ return node;
2373
+ }
2374
+
2375
+ static AlterSeqStmt *
2376
+ _readAlterSeqStmt(OUT_TYPE(AlterSeqStmt, AlterSeqStmt) msg)
2377
+ {
2378
+ AlterSeqStmt *node = makeNode(AlterSeqStmt);
2379
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, sequence, sequence, sequence);
2380
+ READ_LIST_FIELD(options, options, options);
2381
+ READ_BOOL_FIELD(for_identity, for_identity, for_identity);
2382
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2383
+ return node;
2384
+ }
2385
+
2386
+ static DefineStmt *
2387
+ _readDefineStmt(OUT_TYPE(DefineStmt, DefineStmt) msg)
2388
+ {
2389
+ DefineStmt *node = makeNode(DefineStmt);
2390
+ READ_ENUM_FIELD(ObjectType, kind, kind, kind);
2391
+ READ_BOOL_FIELD(oldstyle, oldstyle, oldstyle);
2392
+ READ_LIST_FIELD(defnames, defnames, defnames);
2393
+ READ_LIST_FIELD(args, args, args);
2394
+ READ_LIST_FIELD(definition, definition, definition);
2395
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2396
+ READ_BOOL_FIELD(replace, replace, replace);
2397
+ return node;
2398
+ }
2399
+
2400
+ static CreateDomainStmt *
2401
+ _readCreateDomainStmt(OUT_TYPE(CreateDomainStmt, CreateDomainStmt) msg)
2402
+ {
2403
+ CreateDomainStmt *node = makeNode(CreateDomainStmt);
2404
+ READ_LIST_FIELD(domainname, domainname, domainname);
2405
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2406
+ READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2407
+ READ_LIST_FIELD(constraints, constraints, constraints);
2408
+ return node;
2409
+ }
2410
+
2411
+ static CreateOpClassStmt *
2412
+ _readCreateOpClassStmt(OUT_TYPE(CreateOpClassStmt, CreateOpClassStmt) msg)
2413
+ {
2414
+ CreateOpClassStmt *node = makeNode(CreateOpClassStmt);
2415
+ READ_LIST_FIELD(opclassname, opclassname, opclassname);
2416
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2417
+ READ_STRING_FIELD(amname, amname, amname);
2418
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, datatype, datatype, datatype);
2419
+ READ_LIST_FIELD(items, items, items);
2420
+ READ_BOOL_FIELD(is_default, isDefault, isDefault);
2421
+ return node;
2422
+ }
2423
+
2424
+ static CreateOpClassItem *
2425
+ _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg)
2426
+ {
2427
+ CreateOpClassItem *node = makeNode(CreateOpClassItem);
2428
+ READ_INT_FIELD(itemtype, itemtype, itemtype);
2429
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2430
+ READ_INT_FIELD(number, number, number);
2431
+ READ_LIST_FIELD(order_family, order_family, order_family);
2432
+ READ_LIST_FIELD(class_args, class_args, class_args);
2433
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
2434
+ return node;
2435
+ }
2436
+
2437
+ static CreateOpFamilyStmt *
2438
+ _readCreateOpFamilyStmt(OUT_TYPE(CreateOpFamilyStmt, CreateOpFamilyStmt) msg)
2439
+ {
2440
+ CreateOpFamilyStmt *node = makeNode(CreateOpFamilyStmt);
2441
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2442
+ READ_STRING_FIELD(amname, amname, amname);
2443
+ return node;
2444
+ }
2445
+
2446
+ static AlterOpFamilyStmt *
2447
+ _readAlterOpFamilyStmt(OUT_TYPE(AlterOpFamilyStmt, AlterOpFamilyStmt) msg)
2448
+ {
2449
+ AlterOpFamilyStmt *node = makeNode(AlterOpFamilyStmt);
2450
+ READ_LIST_FIELD(opfamilyname, opfamilyname, opfamilyname);
2451
+ READ_STRING_FIELD(amname, amname, amname);
2452
+ READ_BOOL_FIELD(is_drop, isDrop, isDrop);
2453
+ READ_LIST_FIELD(items, items, items);
2454
+ return node;
2455
+ }
2456
+
2457
+ static DropStmt *
2458
+ _readDropStmt(OUT_TYPE(DropStmt, DropStmt) msg)
2136
2459
  {
2137
- AlterPolicyStmt *node = makeNode(AlterPolicyStmt);
2138
- READ_STRING_FIELD(policy_name, policy_name, policy_name);
2139
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, table, table, table);
2140
- READ_LIST_FIELD(roles, roles, roles);
2141
- READ_NODE_PTR_FIELD(qual, qual, qual);
2142
- READ_NODE_PTR_FIELD(with_check, with_check, with_check);
2460
+ DropStmt *node = makeNode(DropStmt);
2461
+ READ_LIST_FIELD(objects, objects, objects);
2462
+ READ_ENUM_FIELD(ObjectType, remove_type, removeType, removeType);
2463
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2464
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2465
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2143
2466
  return node;
2144
2467
  }
2145
2468
 
2146
- static CreateTransformStmt *
2147
- _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg)
2469
+ static TruncateStmt *
2470
+ _readTruncateStmt(OUT_TYPE(TruncateStmt, TruncateStmt) msg)
2148
2471
  {
2149
- CreateTransformStmt *node = makeNode(CreateTransformStmt);
2150
- READ_BOOL_FIELD(replace, replace, replace);
2151
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
2152
- READ_STRING_FIELD(lang, lang, lang);
2153
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
2154
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2472
+ TruncateStmt *node = makeNode(TruncateStmt);
2473
+ READ_LIST_FIELD(relations, relations, relations);
2474
+ READ_BOOL_FIELD(restart_seqs, restart_seqs, restart_seqs);
2475
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2155
2476
  return node;
2156
2477
  }
2157
2478
 
2158
- static CreateAmStmt *
2159
- _readCreateAmStmt(OUT_TYPE(CreateAmStmt, CreateAmStmt) msg)
2479
+ static CommentStmt *
2480
+ _readCommentStmt(OUT_TYPE(CommentStmt, CommentStmt) msg)
2160
2481
  {
2161
- CreateAmStmt *node = makeNode(CreateAmStmt);
2162
- READ_STRING_FIELD(amname, amname, amname);
2163
- READ_LIST_FIELD(handler_name, handler_name, handler_name);
2164
- READ_CHAR_FIELD(amtype, amtype, amtype);
2482
+ CommentStmt *node = makeNode(CommentStmt);
2483
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2484
+ READ_NODE_PTR_FIELD(object, object, object);
2485
+ READ_STRING_FIELD(comment, comment, comment);
2165
2486
  return node;
2166
2487
  }
2167
2488
 
2168
- static CreatePublicationStmt *
2169
- _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg)
2489
+ static SecLabelStmt *
2490
+ _readSecLabelStmt(OUT_TYPE(SecLabelStmt, SecLabelStmt) msg)
2170
2491
  {
2171
- CreatePublicationStmt *node = makeNode(CreatePublicationStmt);
2172
- READ_STRING_FIELD(pubname, pubname, pubname);
2173
- READ_LIST_FIELD(options, options, options);
2174
- READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
2175
- READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2492
+ SecLabelStmt *node = makeNode(SecLabelStmt);
2493
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2494
+ READ_NODE_PTR_FIELD(object, object, object);
2495
+ READ_STRING_FIELD(provider, provider, provider);
2496
+ READ_STRING_FIELD(label, label, label);
2176
2497
  return node;
2177
2498
  }
2178
2499
 
2179
- static AlterPublicationStmt *
2180
- _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg)
2500
+ static DeclareCursorStmt *
2501
+ _readDeclareCursorStmt(OUT_TYPE(DeclareCursorStmt, DeclareCursorStmt) msg)
2181
2502
  {
2182
- AlterPublicationStmt *node = makeNode(AlterPublicationStmt);
2183
- READ_STRING_FIELD(pubname, pubname, pubname);
2184
- READ_LIST_FIELD(options, options, options);
2185
- READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
2186
- READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
2187
- READ_ENUM_FIELD(AlterPublicationAction, action, action, action);
2503
+ DeclareCursorStmt *node = makeNode(DeclareCursorStmt);
2504
+ READ_STRING_FIELD(portalname, portalname, portalname);
2505
+ READ_INT_FIELD(options, options, options);
2506
+ READ_NODE_PTR_FIELD(query, query, query);
2188
2507
  return node;
2189
2508
  }
2190
2509
 
2191
- static CreateSubscriptionStmt *
2192
- _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg)
2510
+ static ClosePortalStmt *
2511
+ _readClosePortalStmt(OUT_TYPE(ClosePortalStmt, ClosePortalStmt) msg)
2193
2512
  {
2194
- CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt);
2195
- READ_STRING_FIELD(subname, subname, subname);
2196
- READ_STRING_FIELD(conninfo, conninfo, conninfo);
2197
- READ_LIST_FIELD(publication, publication, publication);
2198
- READ_LIST_FIELD(options, options, options);
2513
+ ClosePortalStmt *node = makeNode(ClosePortalStmt);
2514
+ READ_STRING_FIELD(portalname, portalname, portalname);
2199
2515
  return node;
2200
2516
  }
2201
2517
 
2202
- static AlterSubscriptionStmt *
2203
- _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg)
2518
+ static FetchStmt *
2519
+ _readFetchStmt(OUT_TYPE(FetchStmt, FetchStmt) msg)
2204
2520
  {
2205
- AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt);
2206
- READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
2207
- READ_STRING_FIELD(subname, subname, subname);
2208
- READ_STRING_FIELD(conninfo, conninfo, conninfo);
2209
- READ_LIST_FIELD(publication, publication, publication);
2210
- READ_LIST_FIELD(options, options, options);
2521
+ FetchStmt *node = makeNode(FetchStmt);
2522
+ READ_ENUM_FIELD(FetchDirection, direction, direction, direction);
2523
+ READ_LONG_FIELD(how_many, howMany, howMany);
2524
+ READ_STRING_FIELD(portalname, portalname, portalname);
2525
+ READ_BOOL_FIELD(ismove, ismove, ismove);
2211
2526
  return node;
2212
2527
  }
2213
2528
 
2214
- static DropSubscriptionStmt *
2215
- _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg)
2529
+ static IndexStmt *
2530
+ _readIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) msg)
2216
2531
  {
2217
- DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt);
2218
- READ_STRING_FIELD(subname, subname, subname);
2219
- READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2220
- READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2532
+ IndexStmt *node = makeNode(IndexStmt);
2533
+ READ_STRING_FIELD(idxname, idxname, idxname);
2534
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2535
+ READ_STRING_FIELD(access_method, accessMethod, accessMethod);
2536
+ READ_STRING_FIELD(table_space, tableSpace, tableSpace);
2537
+ READ_LIST_FIELD(index_params, indexParams, indexParams);
2538
+ READ_LIST_FIELD(index_including_params, indexIncludingParams, indexIncludingParams);
2539
+ READ_LIST_FIELD(options, options, options);
2540
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2541
+ READ_LIST_FIELD(exclude_op_names, excludeOpNames, excludeOpNames);
2542
+ READ_STRING_FIELD(idxcomment, idxcomment, idxcomment);
2543
+ READ_UINT_FIELD(index_oid, indexOid, indexOid);
2544
+ READ_UINT_FIELD(old_number, oldNumber, oldNumber);
2545
+ READ_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
2546
+ READ_UINT_FIELD(old_first_relfilelocator_subid, oldFirstRelfilelocatorSubid, oldFirstRelfilelocatorSubid);
2547
+ READ_BOOL_FIELD(unique, unique, unique);
2548
+ READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2549
+ READ_BOOL_FIELD(primary, primary, primary);
2550
+ READ_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
2551
+ READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2552
+ READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2553
+ READ_BOOL_FIELD(transformed, transformed, transformed);
2554
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2555
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2556
+ READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2221
2557
  return node;
2222
2558
  }
2223
2559
 
@@ -2235,21 +2571,12 @@ _readCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) msg)
2235
2571
  return node;
2236
2572
  }
2237
2573
 
2238
- static AlterCollationStmt *
2239
- _readAlterCollationStmt(OUT_TYPE(AlterCollationStmt, AlterCollationStmt) msg)
2240
- {
2241
- AlterCollationStmt *node = makeNode(AlterCollationStmt);
2242
- READ_LIST_FIELD(collname, collname, collname);
2243
- return node;
2244
- }
2245
-
2246
- static CallStmt *
2247
- _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg)
2574
+ static StatsElem *
2575
+ _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg)
2248
2576
  {
2249
- CallStmt *node = makeNode(CallStmt);
2250
- READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
2251
- READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2252
- READ_LIST_FIELD(outargs, outargs, outargs);
2577
+ StatsElem *node = makeNode(StatsElem);
2578
+ READ_STRING_FIELD(name, name, name);
2579
+ READ_NODE_PTR_FIELD(expr, expr, expr);
2253
2580
  return node;
2254
2581
  }
2255
2582
 
@@ -2263,721 +2590,528 @@ _readAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) msg)
2263
2590
  return node;
2264
2591
  }
2265
2592
 
2266
- static A_Expr *
2267
- _readAExpr(OUT_TYPE(A_Expr, AExpr) msg)
2268
- {
2269
- A_Expr *node = makeNode(A_Expr);
2270
- READ_ENUM_FIELD(A_Expr_Kind, kind, kind, kind);
2271
- READ_LIST_FIELD(name, name, name);
2272
- READ_NODE_PTR_FIELD(lexpr, lexpr, lexpr);
2273
- READ_NODE_PTR_FIELD(rexpr, rexpr, rexpr);
2274
- READ_INT_FIELD(location, location, location);
2275
- return node;
2276
- }
2277
-
2278
- static ColumnRef *
2279
- _readColumnRef(OUT_TYPE(ColumnRef, ColumnRef) msg)
2280
- {
2281
- ColumnRef *node = makeNode(ColumnRef);
2282
- READ_LIST_FIELD(fields, fields, fields);
2283
- READ_INT_FIELD(location, location, location);
2284
- return node;
2285
- }
2286
-
2287
- static ParamRef *
2288
- _readParamRef(OUT_TYPE(ParamRef, ParamRef) msg)
2289
- {
2290
- ParamRef *node = makeNode(ParamRef);
2291
- READ_INT_FIELD(number, number, number);
2292
- READ_INT_FIELD(location, location, location);
2293
- return node;
2294
- }
2295
-
2296
- static FuncCall *
2297
- _readFuncCall(OUT_TYPE(FuncCall, FuncCall) msg)
2593
+ static CreateFunctionStmt *
2594
+ _readCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) msg)
2298
2595
  {
2299
- FuncCall *node = makeNode(FuncCall);
2596
+ CreateFunctionStmt *node = makeNode(CreateFunctionStmt);
2597
+ READ_BOOL_FIELD(is_procedure, is_procedure, is_procedure);
2598
+ READ_BOOL_FIELD(replace, replace, replace);
2300
2599
  READ_LIST_FIELD(funcname, funcname, funcname);
2301
- READ_LIST_FIELD(args, args, args);
2302
- READ_LIST_FIELD(agg_order, agg_order, agg_order);
2303
- READ_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
2304
- READ_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
2305
- READ_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
2306
- READ_BOOL_FIELD(agg_star, agg_star, agg_star);
2307
- READ_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
2308
- READ_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
2309
- READ_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat);
2310
- READ_INT_FIELD(location, location, location);
2600
+ READ_LIST_FIELD(parameters, parameters, parameters);
2601
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
2602
+ READ_LIST_FIELD(options, options, options);
2603
+ READ_NODE_PTR_FIELD(sql_body, sql_body, sql_body);
2311
2604
  return node;
2312
2605
  }
2313
2606
 
2314
- static A_Star *
2315
- _readAStar(OUT_TYPE(A_Star, AStar) msg)
2607
+ static FunctionParameter *
2608
+ _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg)
2316
2609
  {
2317
- A_Star *node = makeNode(A_Star);
2610
+ FunctionParameter *node = makeNode(FunctionParameter);
2611
+ READ_STRING_FIELD(name, name, name);
2612
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2613
+ READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2614
+ READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
2318
2615
  return node;
2319
2616
  }
2320
2617
 
2321
- static A_Indices *
2322
- _readAIndices(OUT_TYPE(A_Indices, AIndices) msg)
2618
+ static AlterFunctionStmt *
2619
+ _readAlterFunctionStmt(OUT_TYPE(AlterFunctionStmt, AlterFunctionStmt) msg)
2323
2620
  {
2324
- A_Indices *node = makeNode(A_Indices);
2325
- READ_BOOL_FIELD(is_slice, is_slice, is_slice);
2326
- READ_NODE_PTR_FIELD(lidx, lidx, lidx);
2327
- READ_NODE_PTR_FIELD(uidx, uidx, uidx);
2621
+ AlterFunctionStmt *node = makeNode(AlterFunctionStmt);
2622
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2623
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
2624
+ READ_LIST_FIELD(actions, actions, actions);
2328
2625
  return node;
2329
2626
  }
2330
2627
 
2331
- static A_Indirection *
2332
- _readAIndirection(OUT_TYPE(A_Indirection, AIndirection) msg)
2628
+ static DoStmt *
2629
+ _readDoStmt(OUT_TYPE(DoStmt, DoStmt) msg)
2333
2630
  {
2334
- A_Indirection *node = makeNode(A_Indirection);
2335
- READ_NODE_PTR_FIELD(arg, arg, arg);
2336
- READ_LIST_FIELD(indirection, indirection, indirection);
2631
+ DoStmt *node = makeNode(DoStmt);
2632
+ READ_LIST_FIELD(args, args, args);
2337
2633
  return node;
2338
2634
  }
2339
2635
 
2340
- static A_ArrayExpr *
2341
- _readAArrayExpr(OUT_TYPE(A_ArrayExpr, AArrayExpr) msg)
2636
+ static InlineCodeBlock *
2637
+ _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg)
2342
2638
  {
2343
- A_ArrayExpr *node = makeNode(A_ArrayExpr);
2344
- READ_LIST_FIELD(elements, elements, elements);
2345
- READ_INT_FIELD(location, location, location);
2639
+ InlineCodeBlock *node = makeNode(InlineCodeBlock);
2640
+ READ_STRING_FIELD(source_text, source_text, source_text);
2641
+ READ_UINT_FIELD(lang_oid, langOid, langOid);
2642
+ READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
2643
+ READ_BOOL_FIELD(atomic, atomic, atomic);
2346
2644
  return node;
2347
2645
  }
2348
2646
 
2349
- static ResTarget *
2350
- _readResTarget(OUT_TYPE(ResTarget, ResTarget) msg)
2647
+ static CallStmt *
2648
+ _readCallStmt(OUT_TYPE(CallStmt, CallStmt) msg)
2351
2649
  {
2352
- ResTarget *node = makeNode(ResTarget);
2353
- READ_STRING_FIELD(name, name, name);
2354
- READ_LIST_FIELD(indirection, indirection, indirection);
2355
- READ_NODE_PTR_FIELD(val, val, val);
2356
- READ_INT_FIELD(location, location, location);
2650
+ CallStmt *node = makeNode(CallStmt);
2651
+ READ_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
2652
+ READ_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
2653
+ READ_LIST_FIELD(outargs, outargs, outargs);
2357
2654
  return node;
2358
2655
  }
2359
-
2360
- static MultiAssignRef *
2361
- _readMultiAssignRef(OUT_TYPE(MultiAssignRef, MultiAssignRef) msg)
2656
+
2657
+ static CallContext *
2658
+ _readCallContext(OUT_TYPE(CallContext, CallContext) msg)
2362
2659
  {
2363
- MultiAssignRef *node = makeNode(MultiAssignRef);
2364
- READ_NODE_PTR_FIELD(source, source, source);
2365
- READ_INT_FIELD(colno, colno, colno);
2366
- READ_INT_FIELD(ncolumns, ncolumns, ncolumns);
2660
+ CallContext *node = makeNode(CallContext);
2661
+ READ_BOOL_FIELD(atomic, atomic, atomic);
2367
2662
  return node;
2368
2663
  }
2369
2664
 
2370
- static TypeCast *
2371
- _readTypeCast(OUT_TYPE(TypeCast, TypeCast) msg)
2665
+ static RenameStmt *
2666
+ _readRenameStmt(OUT_TYPE(RenameStmt, RenameStmt) msg)
2372
2667
  {
2373
- TypeCast *node = makeNode(TypeCast);
2374
- READ_NODE_PTR_FIELD(arg, arg, arg);
2375
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2376
- READ_INT_FIELD(location, location, location);
2668
+ RenameStmt *node = makeNode(RenameStmt);
2669
+ READ_ENUM_FIELD(ObjectType, rename_type, renameType, renameType);
2670
+ READ_ENUM_FIELD(ObjectType, relation_type, relationType, relationType);
2671
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2672
+ READ_NODE_PTR_FIELD(object, object, object);
2673
+ READ_STRING_FIELD(subname, subname, subname);
2674
+ READ_STRING_FIELD(newname, newname, newname);
2675
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2676
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2377
2677
  return node;
2378
2678
  }
2379
2679
 
2380
- static CollateClause *
2381
- _readCollateClause(OUT_TYPE(CollateClause, CollateClause) msg)
2680
+ static AlterObjectDependsStmt *
2681
+ _readAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsStmt) msg)
2382
2682
  {
2383
- CollateClause *node = makeNode(CollateClause);
2384
- READ_NODE_PTR_FIELD(arg, arg, arg);
2385
- READ_LIST_FIELD(collname, collname, collname);
2386
- READ_INT_FIELD(location, location, location);
2683
+ AlterObjectDependsStmt *node = makeNode(AlterObjectDependsStmt);
2684
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2685
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2686
+ READ_NODE_PTR_FIELD(object, object, object);
2687
+ READ_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname);
2688
+ READ_BOOL_FIELD(remove, remove, remove);
2387
2689
  return node;
2388
2690
  }
2389
2691
 
2390
- static SortBy *
2391
- _readSortBy(OUT_TYPE(SortBy, SortBy) msg)
2692
+ static AlterObjectSchemaStmt *
2693
+ _readAlterObjectSchemaStmt(OUT_TYPE(AlterObjectSchemaStmt, AlterObjectSchemaStmt) msg)
2392
2694
  {
2393
- SortBy *node = makeNode(SortBy);
2394
- READ_NODE_PTR_FIELD(node, node, node);
2395
- READ_ENUM_FIELD(SortByDir, sortby_dir, sortby_dir, sortby_dir);
2396
- READ_ENUM_FIELD(SortByNulls, sortby_nulls, sortby_nulls, sortby_nulls);
2397
- READ_LIST_FIELD(use_op, useOp, useOp);
2398
- READ_INT_FIELD(location, location, location);
2695
+ AlterObjectSchemaStmt *node = makeNode(AlterObjectSchemaStmt);
2696
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2697
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2698
+ READ_NODE_PTR_FIELD(object, object, object);
2699
+ READ_STRING_FIELD(newschema, newschema, newschema);
2700
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2399
2701
  return node;
2400
2702
  }
2401
2703
 
2402
- static WindowDef *
2403
- _readWindowDef(OUT_TYPE(WindowDef, WindowDef) msg)
2704
+ static AlterOwnerStmt *
2705
+ _readAlterOwnerStmt(OUT_TYPE(AlterOwnerStmt, AlterOwnerStmt) msg)
2404
2706
  {
2405
- WindowDef *node = makeNode(WindowDef);
2406
- READ_STRING_FIELD(name, name, name);
2407
- READ_STRING_FIELD(refname, refname, refname);
2408
- READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
2409
- READ_LIST_FIELD(order_clause, orderClause, orderClause);
2410
- READ_INT_FIELD(frame_options, frameOptions, frameOptions);
2411
- READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
2412
- READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
2413
- READ_INT_FIELD(location, location, location);
2707
+ AlterOwnerStmt *node = makeNode(AlterOwnerStmt);
2708
+ READ_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
2709
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2710
+ READ_NODE_PTR_FIELD(object, object, object);
2711
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newowner, newowner, newowner);
2414
2712
  return node;
2415
2713
  }
2416
2714
 
2417
- static RangeSubselect *
2418
- _readRangeSubselect(OUT_TYPE(RangeSubselect, RangeSubselect) msg)
2715
+ static AlterOperatorStmt *
2716
+ _readAlterOperatorStmt(OUT_TYPE(AlterOperatorStmt, AlterOperatorStmt) msg)
2419
2717
  {
2420
- RangeSubselect *node = makeNode(RangeSubselect);
2421
- READ_BOOL_FIELD(lateral, lateral, lateral);
2422
- READ_NODE_PTR_FIELD(subquery, subquery, subquery);
2423
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2718
+ AlterOperatorStmt *node = makeNode(AlterOperatorStmt);
2719
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, opername, opername, opername);
2720
+ READ_LIST_FIELD(options, options, options);
2424
2721
  return node;
2425
2722
  }
2426
2723
 
2427
- static RangeFunction *
2428
- _readRangeFunction(OUT_TYPE(RangeFunction, RangeFunction) msg)
2724
+ static AlterTypeStmt *
2725
+ _readAlterTypeStmt(OUT_TYPE(AlterTypeStmt, AlterTypeStmt) msg)
2429
2726
  {
2430
- RangeFunction *node = makeNode(RangeFunction);
2431
- READ_BOOL_FIELD(lateral, lateral, lateral);
2432
- READ_BOOL_FIELD(ordinality, ordinality, ordinality);
2433
- READ_BOOL_FIELD(is_rowsfrom, is_rowsfrom, is_rowsfrom);
2434
- READ_LIST_FIELD(functions, functions, functions);
2435
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2436
- READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2727
+ AlterTypeStmt *node = makeNode(AlterTypeStmt);
2728
+ READ_LIST_FIELD(type_name, typeName, typeName);
2729
+ READ_LIST_FIELD(options, options, options);
2437
2730
  return node;
2438
2731
  }
2439
2732
 
2440
- static RangeTableSample *
2441
- _readRangeTableSample(OUT_TYPE(RangeTableSample, RangeTableSample) msg)
2733
+ static RuleStmt *
2734
+ _readRuleStmt(OUT_TYPE(RuleStmt, RuleStmt) msg)
2442
2735
  {
2443
- RangeTableSample *node = makeNode(RangeTableSample);
2444
- READ_NODE_PTR_FIELD(relation, relation, relation);
2445
- READ_LIST_FIELD(method, method, method);
2446
- READ_LIST_FIELD(args, args, args);
2447
- READ_NODE_PTR_FIELD(repeatable, repeatable, repeatable);
2448
- READ_INT_FIELD(location, location, location);
2736
+ RuleStmt *node = makeNode(RuleStmt);
2737
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2738
+ READ_STRING_FIELD(rulename, rulename, rulename);
2739
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2740
+ READ_ENUM_FIELD(CmdType, event, event, event);
2741
+ READ_BOOL_FIELD(instead, instead, instead);
2742
+ READ_LIST_FIELD(actions, actions, actions);
2743
+ READ_BOOL_FIELD(replace, replace, replace);
2449
2744
  return node;
2450
2745
  }
2451
2746
 
2452
- static RangeTableFunc *
2453
- _readRangeTableFunc(OUT_TYPE(RangeTableFunc, RangeTableFunc) msg)
2747
+ static NotifyStmt *
2748
+ _readNotifyStmt(OUT_TYPE(NotifyStmt, NotifyStmt) msg)
2454
2749
  {
2455
- RangeTableFunc *node = makeNode(RangeTableFunc);
2456
- READ_BOOL_FIELD(lateral, lateral, lateral);
2457
- READ_NODE_PTR_FIELD(docexpr, docexpr, docexpr);
2458
- READ_NODE_PTR_FIELD(rowexpr, rowexpr, rowexpr);
2459
- READ_LIST_FIELD(namespaces, namespaces, namespaces);
2460
- READ_LIST_FIELD(columns, columns, columns);
2461
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2462
- READ_INT_FIELD(location, location, location);
2750
+ NotifyStmt *node = makeNode(NotifyStmt);
2751
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2752
+ READ_STRING_FIELD(payload, payload, payload);
2463
2753
  return node;
2464
2754
  }
2465
2755
 
2466
- static RangeTableFuncCol *
2467
- _readRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol) msg)
2756
+ static ListenStmt *
2757
+ _readListenStmt(OUT_TYPE(ListenStmt, ListenStmt) msg)
2468
2758
  {
2469
- RangeTableFuncCol *node = makeNode(RangeTableFuncCol);
2470
- READ_STRING_FIELD(colname, colname, colname);
2471
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2472
- READ_BOOL_FIELD(for_ordinality, for_ordinality, for_ordinality);
2473
- READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2474
- READ_NODE_PTR_FIELD(colexpr, colexpr, colexpr);
2475
- READ_NODE_PTR_FIELD(coldefexpr, coldefexpr, coldefexpr);
2476
- READ_INT_FIELD(location, location, location);
2759
+ ListenStmt *node = makeNode(ListenStmt);
2760
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2477
2761
  return node;
2478
2762
  }
2479
2763
 
2480
- static TypeName *
2481
- _readTypeName(OUT_TYPE(TypeName, TypeName) msg)
2764
+ static UnlistenStmt *
2765
+ _readUnlistenStmt(OUT_TYPE(UnlistenStmt, UnlistenStmt) msg)
2482
2766
  {
2483
- TypeName *node = makeNode(TypeName);
2484
- READ_LIST_FIELD(names, names, names);
2485
- READ_UINT_FIELD(type_oid, typeOid, typeOid);
2486
- READ_BOOL_FIELD(setof, setof, setof);
2487
- READ_BOOL_FIELD(pct_type, pct_type, pct_type);
2488
- READ_LIST_FIELD(typmods, typmods, typmods);
2489
- READ_INT_FIELD(typemod, typemod, typemod);
2490
- READ_LIST_FIELD(array_bounds, arrayBounds, arrayBounds);
2491
- READ_INT_FIELD(location, location, location);
2767
+ UnlistenStmt *node = makeNode(UnlistenStmt);
2768
+ READ_STRING_FIELD(conditionname, conditionname, conditionname);
2492
2769
  return node;
2493
2770
  }
2494
2771
 
2495
- static ColumnDef *
2496
- _readColumnDef(OUT_TYPE(ColumnDef, ColumnDef) msg)
2772
+ static TransactionStmt *
2773
+ _readTransactionStmt(OUT_TYPE(TransactionStmt, TransactionStmt) msg)
2497
2774
  {
2498
- ColumnDef *node = makeNode(ColumnDef);
2499
- READ_STRING_FIELD(colname, colname, colname);
2500
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2501
- READ_STRING_FIELD(compression, compression, compression);
2502
- READ_INT_FIELD(inhcount, inhcount, inhcount);
2503
- READ_BOOL_FIELD(is_local, is_local, is_local);
2504
- READ_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
2505
- READ_BOOL_FIELD(is_from_type, is_from_type, is_from_type);
2506
- READ_CHAR_FIELD(storage, storage, storage);
2507
- READ_NODE_PTR_FIELD(raw_default, raw_default, raw_default);
2508
- READ_NODE_PTR_FIELD(cooked_default, cooked_default, cooked_default);
2509
- READ_CHAR_FIELD(identity, identity, identity);
2510
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, identity_sequence, identitySequence, identitySequence);
2511
- READ_CHAR_FIELD(generated, generated, generated);
2512
- READ_SPECIFIC_NODE_PTR_FIELD(CollateClause, collate_clause, coll_clause, collClause, collClause);
2513
- READ_UINT_FIELD(coll_oid, collOid, collOid);
2514
- READ_LIST_FIELD(constraints, constraints, constraints);
2515
- READ_LIST_FIELD(fdwoptions, fdwoptions, fdwoptions);
2516
- READ_INT_FIELD(location, location, location);
2775
+ TransactionStmt *node = makeNode(TransactionStmt);
2776
+ READ_ENUM_FIELD(TransactionStmtKind, kind, kind, kind);
2777
+ READ_LIST_FIELD(options, options, options);
2778
+ READ_STRING_FIELD(savepoint_name, savepoint_name, savepoint_name);
2779
+ READ_STRING_FIELD(gid, gid, gid);
2780
+ READ_BOOL_FIELD(chain, chain, chain);
2517
2781
  return node;
2518
2782
  }
2519
2783
 
2520
- static IndexElem *
2521
- _readIndexElem(OUT_TYPE(IndexElem, IndexElem) msg)
2784
+ static CompositeTypeStmt *
2785
+ _readCompositeTypeStmt(OUT_TYPE(CompositeTypeStmt, CompositeTypeStmt) msg)
2522
2786
  {
2523
- IndexElem *node = makeNode(IndexElem);
2524
- READ_STRING_FIELD(name, name, name);
2525
- READ_NODE_PTR_FIELD(expr, expr, expr);
2526
- READ_STRING_FIELD(indexcolname, indexcolname, indexcolname);
2527
- READ_LIST_FIELD(collation, collation, collation);
2528
- READ_LIST_FIELD(opclass, opclass, opclass);
2529
- READ_LIST_FIELD(opclassopts, opclassopts, opclassopts);
2530
- READ_ENUM_FIELD(SortByDir, ordering, ordering, ordering);
2531
- READ_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
2787
+ CompositeTypeStmt *node = makeNode(CompositeTypeStmt);
2788
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, typevar, typevar, typevar);
2789
+ READ_LIST_FIELD(coldeflist, coldeflist, coldeflist);
2532
2790
  return node;
2533
2791
  }
2534
2792
 
2535
- static StatsElem *
2536
- _readStatsElem(OUT_TYPE(StatsElem, StatsElem) msg)
2793
+ static CreateEnumStmt *
2794
+ _readCreateEnumStmt(OUT_TYPE(CreateEnumStmt, CreateEnumStmt) msg)
2537
2795
  {
2538
- StatsElem *node = makeNode(StatsElem);
2539
- READ_STRING_FIELD(name, name, name);
2540
- READ_NODE_PTR_FIELD(expr, expr, expr);
2796
+ CreateEnumStmt *node = makeNode(CreateEnumStmt);
2797
+ READ_LIST_FIELD(type_name, typeName, typeName);
2798
+ READ_LIST_FIELD(vals, vals, vals);
2541
2799
  return node;
2542
2800
  }
2543
2801
 
2544
- static Constraint *
2545
- _readConstraint(OUT_TYPE(Constraint, Constraint) msg)
2802
+ static CreateRangeStmt *
2803
+ _readCreateRangeStmt(OUT_TYPE(CreateRangeStmt, CreateRangeStmt) msg)
2546
2804
  {
2547
- Constraint *node = makeNode(Constraint);
2548
- READ_ENUM_FIELD(ConstrType, contype, contype, contype);
2549
- READ_STRING_FIELD(conname, conname, conname);
2550
- READ_BOOL_FIELD(deferrable, deferrable, deferrable);
2551
- READ_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
2552
- READ_INT_FIELD(location, location, location);
2553
- READ_BOOL_FIELD(is_no_inherit, is_no_inherit, is_no_inherit);
2554
- READ_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
2555
- READ_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
2556
- READ_CHAR_FIELD(generated_when, generated_when, generated_when);
2557
- READ_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
2558
- READ_LIST_FIELD(keys, keys, keys);
2559
- READ_LIST_FIELD(including, including, including);
2560
- READ_LIST_FIELD(exclusions, exclusions, exclusions);
2561
- READ_LIST_FIELD(options, options, options);
2562
- READ_STRING_FIELD(indexname, indexname, indexname);
2563
- READ_STRING_FIELD(indexspace, indexspace, indexspace);
2564
- READ_BOOL_FIELD(reset_default_tblspc, reset_default_tblspc, reset_default_tblspc);
2565
- READ_STRING_FIELD(access_method, access_method, access_method);
2566
- READ_NODE_PTR_FIELD(where_clause, where_clause, where_clause);
2567
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, pktable, pktable, pktable);
2568
- READ_LIST_FIELD(fk_attrs, fk_attrs, fk_attrs);
2569
- READ_LIST_FIELD(pk_attrs, pk_attrs, pk_attrs);
2570
- READ_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
2571
- READ_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
2572
- READ_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
2573
- READ_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols);
2574
- READ_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
2575
- READ_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
2576
- READ_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
2577
- READ_BOOL_FIELD(initially_valid, initially_valid, initially_valid);
2805
+ CreateRangeStmt *node = makeNode(CreateRangeStmt);
2806
+ READ_LIST_FIELD(type_name, typeName, typeName);
2807
+ READ_LIST_FIELD(params, params, params);
2578
2808
  return node;
2579
2809
  }
2580
2810
 
2581
- static DefElem *
2582
- _readDefElem(OUT_TYPE(DefElem, DefElem) msg)
2811
+ static AlterEnumStmt *
2812
+ _readAlterEnumStmt(OUT_TYPE(AlterEnumStmt, AlterEnumStmt) msg)
2583
2813
  {
2584
- DefElem *node = makeNode(DefElem);
2585
- READ_STRING_FIELD(defnamespace, defnamespace, defnamespace);
2586
- READ_STRING_FIELD(defname, defname, defname);
2587
- READ_NODE_PTR_FIELD(arg, arg, arg);
2588
- READ_ENUM_FIELD(DefElemAction, defaction, defaction, defaction);
2589
- READ_INT_FIELD(location, location, location);
2814
+ AlterEnumStmt *node = makeNode(AlterEnumStmt);
2815
+ READ_LIST_FIELD(type_name, typeName, typeName);
2816
+ READ_STRING_FIELD(old_val, oldVal, oldVal);
2817
+ READ_STRING_FIELD(new_val, newVal, newVal);
2818
+ READ_STRING_FIELD(new_val_neighbor, newValNeighbor, newValNeighbor);
2819
+ READ_BOOL_FIELD(new_val_is_after, newValIsAfter, newValIsAfter);
2820
+ READ_BOOL_FIELD(skip_if_new_val_exists, skipIfNewValExists, skipIfNewValExists);
2590
2821
  return node;
2591
2822
  }
2592
2823
 
2593
- static RangeTblEntry *
2594
- _readRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) msg)
2824
+ static ViewStmt *
2825
+ _readViewStmt(OUT_TYPE(ViewStmt, ViewStmt) msg)
2595
2826
  {
2596
- RangeTblEntry *node = makeNode(RangeTblEntry);
2597
- READ_ENUM_FIELD(RTEKind, rtekind, rtekind, rtekind);
2598
- READ_UINT_FIELD(relid, relid, relid);
2599
- READ_CHAR_FIELD(relkind, relkind, relkind);
2600
- READ_INT_FIELD(rellockmode, rellockmode, rellockmode);
2601
- READ_SPECIFIC_NODE_PTR_FIELD(TableSampleClause, table_sample_clause, tablesample, tablesample, tablesample);
2602
- READ_SPECIFIC_NODE_PTR_FIELD(Query, query, subquery, subquery, subquery);
2603
- READ_BOOL_FIELD(security_barrier, security_barrier, security_barrier);
2604
- READ_ENUM_FIELD(JoinType, jointype, jointype, jointype);
2605
- READ_INT_FIELD(joinmergedcols, joinmergedcols, joinmergedcols);
2606
- READ_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
2607
- READ_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
2608
- READ_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
2609
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
2610
- READ_LIST_FIELD(functions, functions, functions);
2611
- READ_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
2612
- READ_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
2613
- READ_LIST_FIELD(values_lists, values_lists, values_lists);
2614
- READ_STRING_FIELD(ctename, ctename, ctename);
2615
- READ_UINT_FIELD(ctelevelsup, ctelevelsup, ctelevelsup);
2616
- READ_BOOL_FIELD(self_reference, self_reference, self_reference);
2617
- READ_LIST_FIELD(coltypes, coltypes, coltypes);
2618
- READ_LIST_FIELD(coltypmods, coltypmods, coltypmods);
2619
- READ_LIST_FIELD(colcollations, colcollations, colcollations);
2620
- READ_STRING_FIELD(enrname, enrname, enrname);
2621
- READ_FLOAT_FIELD(enrtuples, enrtuples, enrtuples);
2622
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
2623
- READ_SPECIFIC_NODE_PTR_FIELD(Alias, alias, eref, eref, eref);
2624
- READ_BOOL_FIELD(lateral, lateral, lateral);
2625
- READ_BOOL_FIELD(inh, inh, inh);
2626
- READ_BOOL_FIELD(in_from_cl, inFromCl, inFromCl);
2627
- READ_UINT_FIELD(required_perms, requiredPerms, requiredPerms);
2628
- READ_UINT_FIELD(check_as_user, checkAsUser, checkAsUser);
2629
- READ_BITMAPSET_FIELD(selected_cols, selectedCols, selectedCols);
2630
- READ_BITMAPSET_FIELD(inserted_cols, insertedCols, insertedCols);
2631
- READ_BITMAPSET_FIELD(updated_cols, updatedCols, updatedCols);
2632
- READ_BITMAPSET_FIELD(extra_updated_cols, extraUpdatedCols, extraUpdatedCols);
2633
- READ_LIST_FIELD(security_quals, securityQuals, securityQuals);
2827
+ ViewStmt *node = makeNode(ViewStmt);
2828
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, view, view, view);
2829
+ READ_LIST_FIELD(aliases, aliases, aliases);
2830
+ READ_NODE_PTR_FIELD(query, query, query);
2831
+ READ_BOOL_FIELD(replace, replace, replace);
2832
+ READ_LIST_FIELD(options, options, options);
2833
+ READ_ENUM_FIELD(ViewCheckOption, with_check_option, withCheckOption, withCheckOption);
2634
2834
  return node;
2635
2835
  }
2636
2836
 
2637
- static RangeTblFunction *
2638
- _readRangeTblFunction(OUT_TYPE(RangeTblFunction, RangeTblFunction) msg)
2837
+ static LoadStmt *
2838
+ _readLoadStmt(OUT_TYPE(LoadStmt, LoadStmt) msg)
2639
2839
  {
2640
- RangeTblFunction *node = makeNode(RangeTblFunction);
2641
- READ_NODE_PTR_FIELD(funcexpr, funcexpr, funcexpr);
2642
- READ_INT_FIELD(funccolcount, funccolcount, funccolcount);
2643
- READ_LIST_FIELD(funccolnames, funccolnames, funccolnames);
2644
- READ_LIST_FIELD(funccoltypes, funccoltypes, funccoltypes);
2645
- READ_LIST_FIELD(funccoltypmods, funccoltypmods, funccoltypmods);
2646
- READ_LIST_FIELD(funccolcollations, funccolcollations, funccolcollations);
2647
- READ_BITMAPSET_FIELD(funcparams, funcparams, funcparams);
2840
+ LoadStmt *node = makeNode(LoadStmt);
2841
+ READ_STRING_FIELD(filename, filename, filename);
2648
2842
  return node;
2649
2843
  }
2650
2844
 
2651
- static TableSampleClause *
2652
- _readTableSampleClause(OUT_TYPE(TableSampleClause, TableSampleClause) msg)
2845
+ static CreatedbStmt *
2846
+ _readCreatedbStmt(OUT_TYPE(CreatedbStmt, CreatedbStmt) msg)
2653
2847
  {
2654
- TableSampleClause *node = makeNode(TableSampleClause);
2655
- READ_UINT_FIELD(tsmhandler, tsmhandler, tsmhandler);
2656
- READ_LIST_FIELD(args, args, args);
2657
- READ_EXPR_PTR_FIELD(repeatable, repeatable, repeatable);
2848
+ CreatedbStmt *node = makeNode(CreatedbStmt);
2849
+ READ_STRING_FIELD(dbname, dbname, dbname);
2850
+ READ_LIST_FIELD(options, options, options);
2658
2851
  return node;
2659
2852
  }
2660
2853
 
2661
- static WithCheckOption *
2662
- _readWithCheckOption(OUT_TYPE(WithCheckOption, WithCheckOption) msg)
2854
+ static AlterDatabaseStmt *
2855
+ _readAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) msg)
2663
2856
  {
2664
- WithCheckOption *node = makeNode(WithCheckOption);
2665
- READ_ENUM_FIELD(WCOKind, kind, kind, kind);
2666
- READ_STRING_FIELD(relname, relname, relname);
2667
- READ_STRING_FIELD(polname, polname, polname);
2668
- READ_NODE_PTR_FIELD(qual, qual, qual);
2669
- READ_BOOL_FIELD(cascaded, cascaded, cascaded);
2857
+ AlterDatabaseStmt *node = makeNode(AlterDatabaseStmt);
2858
+ READ_STRING_FIELD(dbname, dbname, dbname);
2859
+ READ_LIST_FIELD(options, options, options);
2670
2860
  return node;
2671
2861
  }
2672
2862
 
2673
- static SortGroupClause *
2674
- _readSortGroupClause(OUT_TYPE(SortGroupClause, SortGroupClause) msg)
2863
+ static AlterDatabaseRefreshCollStmt *
2864
+ _readAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) msg)
2675
2865
  {
2676
- SortGroupClause *node = makeNode(SortGroupClause);
2677
- READ_UINT_FIELD(tle_sort_group_ref, tleSortGroupRef, tleSortGroupRef);
2678
- READ_UINT_FIELD(eqop, eqop, eqop);
2679
- READ_UINT_FIELD(sortop, sortop, sortop);
2680
- READ_BOOL_FIELD(nulls_first, nulls_first, nulls_first);
2681
- READ_BOOL_FIELD(hashable, hashable, hashable);
2866
+ AlterDatabaseRefreshCollStmt *node = makeNode(AlterDatabaseRefreshCollStmt);
2867
+ READ_STRING_FIELD(dbname, dbname, dbname);
2682
2868
  return node;
2683
2869
  }
2684
2870
 
2685
- static GroupingSet *
2686
- _readGroupingSet(OUT_TYPE(GroupingSet, GroupingSet) msg)
2871
+ static AlterDatabaseSetStmt *
2872
+ _readAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) msg)
2687
2873
  {
2688
- GroupingSet *node = makeNode(GroupingSet);
2689
- READ_ENUM_FIELD(GroupingSetKind, kind, kind, kind);
2690
- READ_LIST_FIELD(content, content, content);
2691
- READ_INT_FIELD(location, location, location);
2874
+ AlterDatabaseSetStmt *node = makeNode(AlterDatabaseSetStmt);
2875
+ READ_STRING_FIELD(dbname, dbname, dbname);
2876
+ READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2692
2877
  return node;
2693
2878
  }
2694
2879
 
2695
- static WindowClause *
2696
- _readWindowClause(OUT_TYPE(WindowClause, WindowClause) msg)
2880
+ static DropdbStmt *
2881
+ _readDropdbStmt(OUT_TYPE(DropdbStmt, DropdbStmt) msg)
2697
2882
  {
2698
- WindowClause *node = makeNode(WindowClause);
2699
- READ_STRING_FIELD(name, name, name);
2700
- READ_STRING_FIELD(refname, refname, refname);
2701
- READ_LIST_FIELD(partition_clause, partitionClause, partitionClause);
2702
- READ_LIST_FIELD(order_clause, orderClause, orderClause);
2703
- READ_INT_FIELD(frame_options, frameOptions, frameOptions);
2704
- READ_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
2705
- READ_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
2706
- READ_LIST_FIELD(run_condition, runCondition, runCondition);
2707
- READ_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
2708
- READ_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
2709
- READ_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
2710
- READ_BOOL_FIELD(in_range_asc, inRangeAsc, inRangeAsc);
2711
- READ_BOOL_FIELD(in_range_nulls_first, inRangeNullsFirst, inRangeNullsFirst);
2712
- READ_UINT_FIELD(winref, winref, winref);
2713
- READ_BOOL_FIELD(copied_order, copiedOrder, copiedOrder);
2883
+ DropdbStmt *node = makeNode(DropdbStmt);
2884
+ READ_STRING_FIELD(dbname, dbname, dbname);
2885
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2886
+ READ_LIST_FIELD(options, options, options);
2714
2887
  return node;
2715
2888
  }
2716
2889
 
2717
- static ObjectWithArgs *
2718
- _readObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) msg)
2890
+ static AlterSystemStmt *
2891
+ _readAlterSystemStmt(OUT_TYPE(AlterSystemStmt, AlterSystemStmt) msg)
2719
2892
  {
2720
- ObjectWithArgs *node = makeNode(ObjectWithArgs);
2721
- READ_LIST_FIELD(objname, objname, objname);
2722
- READ_LIST_FIELD(objargs, objargs, objargs);
2723
- READ_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs);
2724
- READ_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
2893
+ AlterSystemStmt *node = makeNode(AlterSystemStmt);
2894
+ READ_SPECIFIC_NODE_PTR_FIELD(VariableSetStmt, variable_set_stmt, setstmt, setstmt, setstmt);
2725
2895
  return node;
2726
2896
  }
2727
2897
 
2728
- static AccessPriv *
2729
- _readAccessPriv(OUT_TYPE(AccessPriv, AccessPriv) msg)
2898
+ static ClusterStmt *
2899
+ _readClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) msg)
2730
2900
  {
2731
- AccessPriv *node = makeNode(AccessPriv);
2732
- READ_STRING_FIELD(priv_name, priv_name, priv_name);
2733
- READ_LIST_FIELD(cols, cols, cols);
2901
+ ClusterStmt *node = makeNode(ClusterStmt);
2902
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2903
+ READ_STRING_FIELD(indexname, indexname, indexname);
2904
+ READ_LIST_FIELD(params, params, params);
2734
2905
  return node;
2735
2906
  }
2736
2907
 
2737
- static CreateOpClassItem *
2738
- _readCreateOpClassItem(OUT_TYPE(CreateOpClassItem, CreateOpClassItem) msg)
2908
+ static VacuumStmt *
2909
+ _readVacuumStmt(OUT_TYPE(VacuumStmt, VacuumStmt) msg)
2739
2910
  {
2740
- CreateOpClassItem *node = makeNode(CreateOpClassItem);
2741
- READ_INT_FIELD(itemtype, itemtype, itemtype);
2742
- READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, name, name, name);
2743
- READ_INT_FIELD(number, number, number);
2744
- READ_LIST_FIELD(order_family, order_family, order_family);
2745
- READ_LIST_FIELD(class_args, class_args, class_args);
2746
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, storedtype, storedtype, storedtype);
2911
+ VacuumStmt *node = makeNode(VacuumStmt);
2912
+ READ_LIST_FIELD(options, options, options);
2913
+ READ_LIST_FIELD(rels, rels, rels);
2914
+ READ_BOOL_FIELD(is_vacuumcmd, is_vacuumcmd, is_vacuumcmd);
2747
2915
  return node;
2748
2916
  }
2749
2917
 
2750
- static TableLikeClause *
2751
- _readTableLikeClause(OUT_TYPE(TableLikeClause, TableLikeClause) msg)
2918
+ static VacuumRelation *
2919
+ _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg)
2752
2920
  {
2753
- TableLikeClause *node = makeNode(TableLikeClause);
2921
+ VacuumRelation *node = makeNode(VacuumRelation);
2754
2922
  READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2755
- READ_UINT_FIELD(options, options, options);
2756
- READ_UINT_FIELD(relation_oid, relationOid, relationOid);
2923
+ READ_UINT_FIELD(oid, oid, oid);
2924
+ READ_LIST_FIELD(va_cols, va_cols, va_cols);
2757
2925
  return node;
2758
2926
  }
2759
2927
 
2760
- static FunctionParameter *
2761
- _readFunctionParameter(OUT_TYPE(FunctionParameter, FunctionParameter) msg)
2928
+ static ExplainStmt *
2929
+ _readExplainStmt(OUT_TYPE(ExplainStmt, ExplainStmt) msg)
2762
2930
  {
2763
- FunctionParameter *node = makeNode(FunctionParameter);
2764
- READ_STRING_FIELD(name, name, name);
2765
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, arg_type, argType, argType);
2766
- READ_ENUM_FIELD(FunctionParameterMode, mode, mode, mode);
2767
- READ_NODE_PTR_FIELD(defexpr, defexpr, defexpr);
2931
+ ExplainStmt *node = makeNode(ExplainStmt);
2932
+ READ_NODE_PTR_FIELD(query, query, query);
2933
+ READ_LIST_FIELD(options, options, options);
2768
2934
  return node;
2769
2935
  }
2770
2936
 
2771
- static LockingClause *
2772
- _readLockingClause(OUT_TYPE(LockingClause, LockingClause) msg)
2937
+ static CreateTableAsStmt *
2938
+ _readCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) msg)
2773
2939
  {
2774
- LockingClause *node = makeNode(LockingClause);
2775
- READ_LIST_FIELD(locked_rels, lockedRels, lockedRels);
2776
- READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2777
- READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
2940
+ CreateTableAsStmt *node = makeNode(CreateTableAsStmt);
2941
+ READ_NODE_PTR_FIELD(query, query, query);
2942
+ READ_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
2943
+ READ_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
2944
+ READ_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
2945
+ READ_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
2778
2946
  return node;
2779
2947
  }
2780
2948
 
2781
- static RowMarkClause *
2782
- _readRowMarkClause(OUT_TYPE(RowMarkClause, RowMarkClause) msg)
2949
+ static RefreshMatViewStmt *
2950
+ _readRefreshMatViewStmt(OUT_TYPE(RefreshMatViewStmt, RefreshMatViewStmt) msg)
2783
2951
  {
2784
- RowMarkClause *node = makeNode(RowMarkClause);
2785
- READ_UINT_FIELD(rti, rti, rti);
2786
- READ_ENUM_FIELD(LockClauseStrength, strength, strength, strength);
2787
- READ_ENUM_FIELD(LockWaitPolicy, wait_policy, waitPolicy, waitPolicy);
2788
- READ_BOOL_FIELD(pushed_down, pushedDown, pushedDown);
2952
+ RefreshMatViewStmt *node = makeNode(RefreshMatViewStmt);
2953
+ READ_BOOL_FIELD(concurrent, concurrent, concurrent);
2954
+ READ_BOOL_FIELD(skip_data, skipData, skipData);
2955
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2789
2956
  return node;
2790
2957
  }
2791
2958
 
2792
- static XmlSerialize *
2793
- _readXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) msg)
2959
+ static CheckPointStmt *
2960
+ _readCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) msg)
2794
2961
  {
2795
- XmlSerialize *node = makeNode(XmlSerialize);
2796
- READ_ENUM_FIELD(XmlOptionType, xmloption, xmloption, xmloption);
2797
- READ_NODE_PTR_FIELD(expr, expr, expr);
2798
- READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
2799
- READ_INT_FIELD(location, location, location);
2962
+ CheckPointStmt *node = makeNode(CheckPointStmt);
2800
2963
  return node;
2801
2964
  }
2802
2965
 
2803
- static WithClause *
2804
- _readWithClause(OUT_TYPE(WithClause, WithClause) msg)
2966
+ static DiscardStmt *
2967
+ _readDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) msg)
2805
2968
  {
2806
- WithClause *node = makeNode(WithClause);
2807
- READ_LIST_FIELD(ctes, ctes, ctes);
2808
- READ_BOOL_FIELD(recursive, recursive, recursive);
2809
- READ_INT_FIELD(location, location, location);
2969
+ DiscardStmt *node = makeNode(DiscardStmt);
2970
+ READ_ENUM_FIELD(DiscardMode, target, target, target);
2810
2971
  return node;
2811
2972
  }
2812
-
2813
- static InferClause *
2814
- _readInferClause(OUT_TYPE(InferClause, InferClause) msg)
2973
+
2974
+ static LockStmt *
2975
+ _readLockStmt(OUT_TYPE(LockStmt, LockStmt) msg)
2815
2976
  {
2816
- InferClause *node = makeNode(InferClause);
2817
- READ_LIST_FIELD(index_elems, indexElems, indexElems);
2818
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2819
- READ_STRING_FIELD(conname, conname, conname);
2820
- READ_INT_FIELD(location, location, location);
2977
+ LockStmt *node = makeNode(LockStmt);
2978
+ READ_LIST_FIELD(relations, relations, relations);
2979
+ READ_INT_FIELD(mode, mode, mode);
2980
+ READ_BOOL_FIELD(nowait, nowait, nowait);
2821
2981
  return node;
2822
2982
  }
2823
2983
 
2824
- static OnConflictClause *
2825
- _readOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) msg)
2984
+ static ConstraintsSetStmt *
2985
+ _readConstraintsSetStmt(OUT_TYPE(ConstraintsSetStmt, ConstraintsSetStmt) msg)
2826
2986
  {
2827
- OnConflictClause *node = makeNode(OnConflictClause);
2828
- READ_ENUM_FIELD(OnConflictAction, action, action, action);
2829
- READ_SPECIFIC_NODE_PTR_FIELD(InferClause, infer_clause, infer, infer, infer);
2830
- READ_LIST_FIELD(target_list, targetList, targetList);
2831
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
2832
- READ_INT_FIELD(location, location, location);
2987
+ ConstraintsSetStmt *node = makeNode(ConstraintsSetStmt);
2988
+ READ_LIST_FIELD(constraints, constraints, constraints);
2989
+ READ_BOOL_FIELD(deferred, deferred, deferred);
2833
2990
  return node;
2834
2991
  }
2835
2992
 
2836
- static CTESearchClause *
2837
- _readCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) msg)
2993
+ static ReindexStmt *
2994
+ _readReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) msg)
2838
2995
  {
2839
- CTESearchClause *node = makeNode(CTESearchClause);
2840
- READ_LIST_FIELD(search_col_list, search_col_list, search_col_list);
2841
- READ_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first);
2842
- READ_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column);
2843
- READ_INT_FIELD(location, location, location);
2996
+ ReindexStmt *node = makeNode(ReindexStmt);
2997
+ READ_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
2998
+ READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2999
+ READ_STRING_FIELD(name, name, name);
3000
+ READ_LIST_FIELD(params, params, params);
2844
3001
  return node;
2845
3002
  }
2846
3003
 
2847
- static CTECycleClause *
2848
- _readCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) msg)
3004
+ static CreateConversionStmt *
3005
+ _readCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) msg)
2849
3006
  {
2850
- CTECycleClause *node = makeNode(CTECycleClause);
2851
- READ_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list);
2852
- READ_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column);
2853
- READ_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value);
2854
- READ_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default);
2855
- READ_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column);
2856
- READ_INT_FIELD(location, location, location);
2857
- READ_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type);
2858
- READ_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod);
2859
- READ_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation);
2860
- READ_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop);
3007
+ CreateConversionStmt *node = makeNode(CreateConversionStmt);
3008
+ READ_LIST_FIELD(conversion_name, conversion_name, conversion_name);
3009
+ READ_STRING_FIELD(for_encoding_name, for_encoding_name, for_encoding_name);
3010
+ READ_STRING_FIELD(to_encoding_name, to_encoding_name, to_encoding_name);
3011
+ READ_LIST_FIELD(func_name, func_name, func_name);
3012
+ READ_BOOL_FIELD(def, def, def);
2861
3013
  return node;
2862
3014
  }
2863
3015
 
2864
- static CommonTableExpr *
2865
- _readCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) msg)
3016
+ static CreateCastStmt *
3017
+ _readCreateCastStmt(OUT_TYPE(CreateCastStmt, CreateCastStmt) msg)
2866
3018
  {
2867
- CommonTableExpr *node = makeNode(CommonTableExpr);
2868
- READ_STRING_FIELD(ctename, ctename, ctename);
2869
- READ_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
2870
- READ_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
2871
- READ_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
2872
- READ_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause);
2873
- READ_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause);
2874
- READ_INT_FIELD(location, location, location);
2875
- READ_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
2876
- READ_INT_FIELD(cterefcount, cterefcount, cterefcount);
2877
- READ_LIST_FIELD(ctecolnames, ctecolnames, ctecolnames);
2878
- READ_LIST_FIELD(ctecoltypes, ctecoltypes, ctecoltypes);
2879
- READ_LIST_FIELD(ctecoltypmods, ctecoltypmods, ctecoltypmods);
2880
- READ_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
3019
+ CreateCastStmt *node = makeNode(CreateCastStmt);
3020
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, sourcetype, sourcetype, sourcetype);
3021
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, targettype, targettype, targettype);
3022
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, func, func, func);
3023
+ READ_ENUM_FIELD(CoercionContext, context, context, context);
3024
+ READ_BOOL_FIELD(inout, inout, inout);
2881
3025
  return node;
2882
3026
  }
2883
3027
 
2884
- static MergeWhenClause *
2885
- _readMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) msg)
3028
+ static CreateTransformStmt *
3029
+ _readCreateTransformStmt(OUT_TYPE(CreateTransformStmt, CreateTransformStmt) msg)
2886
3030
  {
2887
- MergeWhenClause *node = makeNode(MergeWhenClause);
2888
- READ_BOOL_FIELD(matched, matched, matched);
2889
- READ_ENUM_FIELD(CmdType, command_type, commandType, commandType);
2890
- READ_ENUM_FIELD(OverridingKind, override, override, override);
2891
- READ_NODE_PTR_FIELD(condition, condition, condition);
2892
- READ_LIST_FIELD(target_list, targetList, targetList);
2893
- READ_LIST_FIELD(values, values, values);
3031
+ CreateTransformStmt *node = makeNode(CreateTransformStmt);
3032
+ READ_BOOL_FIELD(replace, replace, replace);
3033
+ READ_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, type_name, type_name);
3034
+ READ_STRING_FIELD(lang, lang, lang);
3035
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, fromsql, fromsql, fromsql);
3036
+ READ_SPECIFIC_NODE_PTR_FIELD(ObjectWithArgs, object_with_args, tosql, tosql, tosql);
2894
3037
  return node;
2895
3038
  }
2896
3039
 
2897
- static RoleSpec *
2898
- _readRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) msg)
3040
+ static PrepareStmt *
3041
+ _readPrepareStmt(OUT_TYPE(PrepareStmt, PrepareStmt) msg)
2899
3042
  {
2900
- RoleSpec *node = makeNode(RoleSpec);
2901
- READ_ENUM_FIELD(RoleSpecType, roletype, roletype, roletype);
2902
- READ_STRING_FIELD(rolename, rolename, rolename);
2903
- READ_INT_FIELD(location, location, location);
3043
+ PrepareStmt *node = makeNode(PrepareStmt);
3044
+ READ_STRING_FIELD(name, name, name);
3045
+ READ_LIST_FIELD(argtypes, argtypes, argtypes);
3046
+ READ_NODE_PTR_FIELD(query, query, query);
2904
3047
  return node;
2905
3048
  }
2906
3049
 
2907
- static TriggerTransition *
2908
- _readTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) msg)
3050
+ static ExecuteStmt *
3051
+ _readExecuteStmt(OUT_TYPE(ExecuteStmt, ExecuteStmt) msg)
2909
3052
  {
2910
- TriggerTransition *node = makeNode(TriggerTransition);
3053
+ ExecuteStmt *node = makeNode(ExecuteStmt);
2911
3054
  READ_STRING_FIELD(name, name, name);
2912
- READ_BOOL_FIELD(is_new, isNew, isNew);
2913
- READ_BOOL_FIELD(is_table, isTable, isTable);
3055
+ READ_LIST_FIELD(params, params, params);
2914
3056
  return node;
2915
3057
  }
2916
3058
 
2917
- static PartitionElem *
2918
- _readPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) msg)
3059
+ static DeallocateStmt *
3060
+ _readDeallocateStmt(OUT_TYPE(DeallocateStmt, DeallocateStmt) msg)
2919
3061
  {
2920
- PartitionElem *node = makeNode(PartitionElem);
3062
+ DeallocateStmt *node = makeNode(DeallocateStmt);
2921
3063
  READ_STRING_FIELD(name, name, name);
2922
- READ_NODE_PTR_FIELD(expr, expr, expr);
2923
- READ_LIST_FIELD(collation, collation, collation);
2924
- READ_LIST_FIELD(opclass, opclass, opclass);
2925
- READ_INT_FIELD(location, location, location);
2926
3064
  return node;
2927
3065
  }
2928
3066
 
2929
- static PartitionSpec *
2930
- _readPartitionSpec(OUT_TYPE(PartitionSpec, PartitionSpec) msg)
3067
+ static DropOwnedStmt *
3068
+ _readDropOwnedStmt(OUT_TYPE(DropOwnedStmt, DropOwnedStmt) msg)
2931
3069
  {
2932
- PartitionSpec *node = makeNode(PartitionSpec);
2933
- READ_STRING_FIELD(strategy, strategy, strategy);
2934
- READ_LIST_FIELD(part_params, partParams, partParams);
2935
- READ_INT_FIELD(location, location, location);
3070
+ DropOwnedStmt *node = makeNode(DropOwnedStmt);
3071
+ READ_LIST_FIELD(roles, roles, roles);
3072
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
2936
3073
  return node;
2937
3074
  }
2938
3075
 
2939
- static PartitionBoundSpec *
2940
- _readPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSpec) msg)
3076
+ static ReassignOwnedStmt *
3077
+ _readReassignOwnedStmt(OUT_TYPE(ReassignOwnedStmt, ReassignOwnedStmt) msg)
2941
3078
  {
2942
- PartitionBoundSpec *node = makeNode(PartitionBoundSpec);
2943
- READ_CHAR_FIELD(strategy, strategy, strategy);
2944
- READ_BOOL_FIELD(is_default, is_default, is_default);
2945
- READ_INT_FIELD(modulus, modulus, modulus);
2946
- READ_INT_FIELD(remainder, remainder, remainder);
2947
- READ_LIST_FIELD(listdatums, listdatums, listdatums);
2948
- READ_LIST_FIELD(lowerdatums, lowerdatums, lowerdatums);
2949
- READ_LIST_FIELD(upperdatums, upperdatums, upperdatums);
2950
- READ_INT_FIELD(location, location, location);
3079
+ ReassignOwnedStmt *node = makeNode(ReassignOwnedStmt);
3080
+ READ_LIST_FIELD(roles, roles, roles);
3081
+ READ_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, newrole, newrole, newrole);
2951
3082
  return node;
2952
3083
  }
2953
3084
 
2954
- static PartitionRangeDatum *
2955
- _readPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) msg)
3085
+ static AlterTSDictionaryStmt *
3086
+ _readAlterTSDictionaryStmt(OUT_TYPE(AlterTSDictionaryStmt, AlterTSDictionaryStmt) msg)
2956
3087
  {
2957
- PartitionRangeDatum *node = makeNode(PartitionRangeDatum);
2958
- READ_ENUM_FIELD(PartitionRangeDatumKind, kind, kind, kind);
2959
- READ_NODE_PTR_FIELD(value, value, value);
2960
- READ_INT_FIELD(location, location, location);
3088
+ AlterTSDictionaryStmt *node = makeNode(AlterTSDictionaryStmt);
3089
+ READ_LIST_FIELD(dictname, dictname, dictname);
3090
+ READ_LIST_FIELD(options, options, options);
2961
3091
  return node;
2962
3092
  }
2963
3093
 
2964
- static PartitionCmd *
2965
- _readPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) msg)
3094
+ static AlterTSConfigurationStmt *
3095
+ _readAlterTSConfigurationStmt(OUT_TYPE(AlterTSConfigurationStmt, AlterTSConfigurationStmt) msg)
2966
3096
  {
2967
- PartitionCmd *node = makeNode(PartitionCmd);
2968
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
2969
- READ_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
2970
- READ_BOOL_FIELD(concurrent, concurrent, concurrent);
3097
+ AlterTSConfigurationStmt *node = makeNode(AlterTSConfigurationStmt);
3098
+ READ_ENUM_FIELD(AlterTSConfigType, kind, kind, kind);
3099
+ READ_LIST_FIELD(cfgname, cfgname, cfgname);
3100
+ READ_LIST_FIELD(tokentype, tokentype, tokentype);
3101
+ READ_LIST_FIELD(dicts, dicts, dicts);
3102
+ READ_BOOL_FIELD(override, override, override);
3103
+ READ_BOOL_FIELD(replace, replace, replace);
3104
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
2971
3105
  return node;
2972
3106
  }
2973
3107
 
2974
- static VacuumRelation *
2975
- _readVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) msg)
3108
+ static PublicationTable *
3109
+ _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg)
2976
3110
  {
2977
- VacuumRelation *node = makeNode(VacuumRelation);
3111
+ PublicationTable *node = makeNode(PublicationTable);
2978
3112
  READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
2979
- READ_UINT_FIELD(oid, oid, oid);
2980
- READ_LIST_FIELD(va_cols, va_cols, va_cols);
3113
+ READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
3114
+ READ_LIST_FIELD(columns, columns, columns);
2981
3115
  return node;
2982
3116
  }
2983
3117
 
@@ -2992,32 +3126,59 @@ _readPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) msg)
2992
3126
  return node;
2993
3127
  }
2994
3128
 
2995
- static PublicationTable *
2996
- _readPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) msg)
3129
+ static CreatePublicationStmt *
3130
+ _readCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt) msg)
2997
3131
  {
2998
- PublicationTable *node = makeNode(PublicationTable);
2999
- READ_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
3000
- READ_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
3001
- READ_LIST_FIELD(columns, columns, columns);
3132
+ CreatePublicationStmt *node = makeNode(CreatePublicationStmt);
3133
+ READ_STRING_FIELD(pubname, pubname, pubname);
3134
+ READ_LIST_FIELD(options, options, options);
3135
+ READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
3136
+ READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
3002
3137
  return node;
3003
3138
  }
3004
3139
 
3005
- static InlineCodeBlock *
3006
- _readInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) msg)
3140
+ static AlterPublicationStmt *
3141
+ _readAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) msg)
3007
3142
  {
3008
- InlineCodeBlock *node = makeNode(InlineCodeBlock);
3009
- READ_STRING_FIELD(source_text, source_text, source_text);
3010
- READ_UINT_FIELD(lang_oid, langOid, langOid);
3011
- READ_BOOL_FIELD(lang_is_trusted, langIsTrusted, langIsTrusted);
3012
- READ_BOOL_FIELD(atomic, atomic, atomic);
3143
+ AlterPublicationStmt *node = makeNode(AlterPublicationStmt);
3144
+ READ_STRING_FIELD(pubname, pubname, pubname);
3145
+ READ_LIST_FIELD(options, options, options);
3146
+ READ_LIST_FIELD(pubobjects, pubobjects, pubobjects);
3147
+ READ_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
3148
+ READ_ENUM_FIELD(AlterPublicationAction, action, action, action);
3013
3149
  return node;
3014
3150
  }
3015
3151
 
3016
- static CallContext *
3017
- _readCallContext(OUT_TYPE(CallContext, CallContext) msg)
3152
+ static CreateSubscriptionStmt *
3153
+ _readCreateSubscriptionStmt(OUT_TYPE(CreateSubscriptionStmt, CreateSubscriptionStmt) msg)
3018
3154
  {
3019
- CallContext *node = makeNode(CallContext);
3020
- READ_BOOL_FIELD(atomic, atomic, atomic);
3155
+ CreateSubscriptionStmt *node = makeNode(CreateSubscriptionStmt);
3156
+ READ_STRING_FIELD(subname, subname, subname);
3157
+ READ_STRING_FIELD(conninfo, conninfo, conninfo);
3158
+ READ_LIST_FIELD(publication, publication, publication);
3159
+ READ_LIST_FIELD(options, options, options);
3160
+ return node;
3161
+ }
3162
+
3163
+ static AlterSubscriptionStmt *
3164
+ _readAlterSubscriptionStmt(OUT_TYPE(AlterSubscriptionStmt, AlterSubscriptionStmt) msg)
3165
+ {
3166
+ AlterSubscriptionStmt *node = makeNode(AlterSubscriptionStmt);
3167
+ READ_ENUM_FIELD(AlterSubscriptionType, kind, kind, kind);
3168
+ READ_STRING_FIELD(subname, subname, subname);
3169
+ READ_STRING_FIELD(conninfo, conninfo, conninfo);
3170
+ READ_LIST_FIELD(publication, publication, publication);
3171
+ READ_LIST_FIELD(options, options, options);
3172
+ return node;
3173
+ }
3174
+
3175
+ static DropSubscriptionStmt *
3176
+ _readDropSubscriptionStmt(OUT_TYPE(DropSubscriptionStmt, DropSubscriptionStmt) msg)
3177
+ {
3178
+ DropSubscriptionStmt *node = makeNode(DropSubscriptionStmt);
3179
+ READ_STRING_FIELD(subname, subname, subname);
3180
+ READ_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
3181
+ READ_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
3021
3182
  return node;
3022
3183
  }
3023
3184