pg_query 2.0.3 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
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