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