pg_query 2.2.0 → 4.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +59 -31
- data/Rakefile +2 -2
- data/ext/pg_query/include/access/amapi.h +45 -1
- data/ext/pg_query/include/access/attmap.h +1 -1
- data/ext/pg_query/include/access/attnum.h +2 -2
- data/ext/pg_query/include/access/clog.h +4 -2
- data/ext/pg_query/include/access/commit_ts.h +6 -9
- data/ext/pg_query/include/access/detoast.h +1 -11
- data/ext/pg_query/include/access/genam.h +15 -12
- data/ext/pg_query/include/access/gin.h +2 -2
- data/ext/pg_query/include/access/htup.h +1 -1
- data/ext/pg_query/include/access/htup_details.h +75 -87
- data/ext/pg_query/include/access/itup.h +7 -1
- data/ext/pg_query/include/access/parallel.h +2 -2
- data/ext/pg_query/include/access/printtup.h +1 -1
- data/ext/pg_query/include/access/relation.h +1 -1
- data/ext/pg_query/include/access/relscan.h +17 -2
- data/ext/pg_query/include/access/rmgr.h +30 -3
- data/ext/pg_query/include/access/rmgrlist.h +23 -23
- data/ext/pg_query/include/access/sdir.h +1 -1
- data/ext/pg_query/include/access/skey.h +1 -1
- data/ext/pg_query/include/access/stratnum.h +4 -2
- data/ext/pg_query/include/access/sysattr.h +1 -1
- data/ext/pg_query/include/access/table.h +2 -1
- data/ext/pg_query/include/access/tableam.h +272 -20
- data/ext/pg_query/include/access/toast_compression.h +73 -0
- data/ext/pg_query/include/access/transam.h +123 -13
- data/ext/pg_query/include/access/tupconvert.h +1 -1
- data/ext/pg_query/include/access/tupdesc.h +1 -1
- data/ext/pg_query/include/access/tupmacs.h +3 -3
- data/ext/pg_query/include/access/twophase.h +3 -1
- data/ext/pg_query/include/access/xact.h +73 -19
- data/ext/pg_query/include/access/xlog.h +60 -155
- data/ext/pg_query/include/access/xlog_internal.h +40 -13
- data/ext/pg_query/include/access/xlogdefs.h +8 -16
- data/ext/pg_query/include/access/xlogprefetcher.h +55 -0
- data/ext/pg_query/include/access/xlogreader.h +145 -39
- data/ext/pg_query/include/access/xlogrecord.h +18 -9
- data/ext/pg_query/include/access/xlogrecovery.h +157 -0
- data/ext/pg_query/include/c.h +101 -44
- data/ext/pg_query/include/catalog/catalog.h +3 -1
- data/ext/pg_query/include/catalog/catversion.h +2 -2
- data/ext/pg_query/include/catalog/dependency.h +8 -16
- data/ext/pg_query/include/catalog/genbki.h +83 -5
- data/ext/pg_query/include/catalog/index.h +18 -3
- data/ext/pg_query/include/catalog/indexing.h +12 -324
- data/ext/pg_query/include/catalog/namespace.h +4 -2
- data/ext/pg_query/include/catalog/objectaccess.h +70 -2
- data/ext/pg_query/include/catalog/objectaddress.h +11 -6
- data/ext/pg_query/include/catalog/pg_aggregate.h +14 -10
- data/ext/pg_query/include/catalog/pg_aggregate_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_am.h +4 -1
- data/ext/pg_query/include/catalog/pg_am_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_attribute.h +27 -10
- data/ext/pg_query/include/catalog/pg_attribute_d.h +21 -18
- data/ext/pg_query/include/catalog/pg_authid.h +7 -2
- data/ext/pg_query/include/catalog/pg_authid_d.h +17 -9
- data/ext/pg_query/include/catalog/pg_class.h +44 -14
- data/ext/pg_query/include/catalog/pg_class_d.h +30 -1
- data/ext/pg_query/include/catalog/pg_collation.h +33 -8
- data/ext/pg_query/include/catalog/pg_collation_d.h +20 -3
- data/ext/pg_query/include/catalog/pg_constraint.h +38 -12
- data/ext/pg_query/include/catalog/pg_constraint_d.h +10 -4
- data/ext/pg_query/include/catalog/pg_control.h +3 -5
- data/ext/pg_query/include/catalog/pg_conversion.h +7 -4
- data/ext/pg_query/include/catalog/pg_conversion_d.h +4 -1
- data/ext/pg_query/include/catalog/pg_depend.h +11 -7
- data/ext/pg_query/include/catalog/pg_depend_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_event_trigger.h +9 -3
- data/ext/pg_query/include/catalog/pg_event_trigger_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_index.h +17 -7
- data/ext/pg_query/include/catalog/pg_index_d.h +20 -17
- data/ext/pg_query/include/catalog/pg_language.h +10 -5
- data/ext/pg_query/include/catalog/pg_language_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_namespace.h +7 -2
- data/ext/pg_query/include/catalog/pg_namespace_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_opclass.h +8 -5
- data/ext/pg_query/include/catalog/pg_opclass_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_operator.h +18 -15
- data/ext/pg_query/include/catalog/pg_operator_d.h +37 -1
- data/ext/pg_query/include/catalog/pg_opfamily.h +6 -3
- data/ext/pg_query/include/catalog/pg_opfamily_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_parameter_acl.h +60 -0
- data/ext/pg_query/include/catalog/pg_parameter_acl_d.h +34 -0
- data/ext/pg_query/include/catalog/pg_partitioned_table.h +20 -9
- data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_proc.h +20 -11
- data/ext/pg_query/include/catalog/pg_proc_d.h +10 -8
- data/ext/pg_query/include/catalog/pg_publication.h +50 -7
- data/ext/pg_query/include/catalog/pg_publication_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_replication_origin.h +6 -1
- data/ext/pg_query/include/catalog/pg_replication_origin_d.h +5 -1
- data/ext/pg_query/include/catalog/pg_statistic.h +19 -12
- data/ext/pg_query/include/catalog/pg_statistic_d.h +2 -1
- data/ext/pg_query/include/catalog/pg_statistic_ext.h +19 -5
- data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +7 -2
- data/ext/pg_query/include/catalog/pg_transform.h +8 -5
- data/ext/pg_query/include/catalog/pg_transform_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_trigger.h +24 -8
- data/ext/pg_query/include/catalog/pg_trigger_d.h +4 -1
- data/ext/pg_query/include/catalog/pg_ts_config.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_config_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_dict.h +8 -3
- data/ext/pg_query/include/catalog/pg_ts_dict_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_parser.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_parser_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_ts_template.h +6 -3
- data/ext/pg_query/include/catalog/pg_ts_template_d.h +3 -1
- data/ext/pg_query/include/catalog/pg_type.h +55 -24
- data/ext/pg_query/include/catalog/pg_type_d.h +70 -31
- data/ext/pg_query/include/catalog/storage.h +5 -3
- data/ext/pg_query/include/commands/async.h +3 -4
- data/ext/pg_query/include/commands/dbcommands.h +2 -1
- data/ext/pg_query/include/commands/defrem.h +11 -24
- data/ext/pg_query/include/commands/event_trigger.h +2 -2
- data/ext/pg_query/include/commands/explain.h +1 -1
- data/ext/pg_query/include/commands/prepare.h +1 -1
- data/ext/pg_query/include/commands/tablespace.h +2 -2
- data/ext/pg_query/include/commands/trigger.h +18 -16
- data/ext/pg_query/include/commands/user.h +2 -2
- data/ext/pg_query/include/commands/vacuum.h +88 -41
- data/ext/pg_query/include/commands/variable.h +1 -1
- data/ext/pg_query/include/common/file_perm.h +4 -4
- data/ext/pg_query/include/common/hashfn.h +1 -1
- data/ext/pg_query/include/common/ip.h +1 -7
- data/ext/pg_query/include/common/keywords.h +2 -6
- data/ext/pg_query/include/common/kwlookup.h +1 -1
- data/ext/pg_query/include/common/pg_prng.h +60 -0
- data/ext/pg_query/include/common/relpath.h +2 -2
- data/ext/pg_query/include/common/string.h +24 -1
- data/ext/pg_query/include/common/unicode_combining_table.h +114 -2
- data/ext/pg_query/include/common/unicode_east_asian_fw_table.h +125 -0
- data/ext/pg_query/include/datatype/timestamp.h +40 -1
- data/ext/pg_query/include/executor/execdesc.h +1 -1
- data/ext/pg_query/include/executor/executor.h +65 -22
- data/ext/pg_query/include/executor/functions.h +17 -3
- data/ext/pg_query/include/executor/instrument.h +33 -16
- data/ext/pg_query/include/executor/spi.h +41 -3
- data/ext/pg_query/include/executor/tablefunc.h +1 -1
- data/ext/pg_query/include/executor/tuptable.h +1 -1
- data/ext/pg_query/include/fmgr.h +13 -7
- data/ext/pg_query/include/funcapi.h +16 -4
- data/ext/pg_query/include/getaddrinfo.h +1 -1
- data/ext/pg_query/include/jit/jit.h +11 -11
- data/ext/pg_query/include/kwlist_d.h +517 -494
- data/ext/pg_query/include/lib/dshash.h +112 -0
- data/ext/pg_query/include/lib/ilist.h +20 -1
- data/ext/pg_query/include/lib/pairingheap.h +1 -1
- data/ext/pg_query/include/lib/simplehash.h +140 -15
- data/ext/pg_query/include/lib/sort_template.h +432 -0
- data/ext/pg_query/include/lib/stringinfo.h +1 -1
- data/ext/pg_query/include/libpq/auth.h +6 -4
- data/ext/pg_query/include/libpq/crypt.h +5 -4
- data/ext/pg_query/include/libpq/hba.h +43 -4
- data/ext/pg_query/include/libpq/libpq-be.h +23 -6
- data/ext/pg_query/include/libpq/libpq.h +30 -20
- data/ext/pg_query/include/libpq/pqcomm.h +17 -31
- data/ext/pg_query/include/libpq/pqformat.h +1 -1
- data/ext/pg_query/include/libpq/pqsignal.h +4 -4
- data/ext/pg_query/include/mb/pg_wchar.h +105 -23
- data/ext/pg_query/include/mb/stringinfo_mb.h +1 -1
- data/ext/pg_query/include/miscadmin.h +47 -41
- data/ext/pg_query/include/nodes/bitmapset.h +1 -1
- data/ext/pg_query/include/nodes/execnodes.h +270 -78
- data/ext/pg_query/include/nodes/extensible.h +4 -2
- data/ext/pg_query/include/nodes/lockoptions.h +1 -1
- data/ext/pg_query/include/nodes/makefuncs.h +7 -6
- data/ext/pg_query/include/nodes/memnodes.h +5 -3
- data/ext/pg_query/include/nodes/nodeFuncs.h +1 -1
- data/ext/pg_query/include/nodes/nodes.h +30 -11
- data/ext/pg_query/include/nodes/params.h +1 -1
- data/ext/pg_query/include/nodes/parsenodes.h +322 -90
- data/ext/pg_query/include/nodes/pathnodes.h +243 -66
- data/ext/pg_query/include/nodes/pg_list.h +75 -69
- data/ext/pg_query/include/nodes/plannodes.h +111 -28
- data/ext/pg_query/include/nodes/primnodes.h +99 -47
- data/ext/pg_query/include/nodes/print.h +1 -1
- data/ext/pg_query/include/nodes/tidbitmap.h +1 -1
- data/ext/pg_query/include/nodes/value.h +58 -39
- data/ext/pg_query/include/optimizer/cost.h +9 -2
- data/ext/pg_query/include/optimizer/geqo.h +9 -7
- data/ext/pg_query/include/optimizer/geqo_gene.h +1 -1
- data/ext/pg_query/include/optimizer/optimizer.h +25 -17
- data/ext/pg_query/include/optimizer/paths.h +6 -6
- data/ext/pg_query/include/optimizer/planmain.h +15 -14
- data/ext/pg_query/include/parser/analyze.h +19 -5
- data/ext/pg_query/include/parser/gram.h +947 -913
- data/ext/pg_query/include/parser/gramparse.h +1 -1
- data/ext/pg_query/include/parser/kwlist.h +463 -453
- data/ext/pg_query/include/parser/parse_agg.h +2 -7
- data/ext/pg_query/include/parser/parse_coerce.h +3 -1
- data/ext/pg_query/include/parser/parse_expr.h +2 -3
- data/ext/pg_query/include/parser/parse_func.h +2 -1
- data/ext/pg_query/include/parser/parse_node.h +21 -9
- data/ext/pg_query/include/parser/parse_oper.h +1 -3
- data/ext/pg_query/include/parser/parse_relation.h +5 -4
- data/ext/pg_query/include/parser/parse_type.h +1 -1
- data/ext/pg_query/include/parser/parser.h +31 -4
- data/ext/pg_query/include/parser/parsetree.h +1 -1
- data/ext/pg_query/include/parser/scanner.h +1 -1
- data/ext/pg_query/include/parser/scansup.h +2 -5
- data/ext/pg_query/include/partitioning/partdefs.h +1 -1
- data/ext/pg_query/include/pg_config.h +83 -41
- data/ext/pg_query/include/pg_config_manual.h +74 -21
- data/ext/pg_query/include/pg_getopt.h +6 -6
- data/ext/pg_query/include/pg_query.h +5 -4
- data/ext/pg_query/include/pg_query_enum_defs.c +358 -241
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +44 -7
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +939 -113
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +43 -13
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +151 -26
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +11 -2
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +173 -30
- data/ext/pg_query/include/pg_trace.h +1 -1
- data/ext/pg_query/include/pgstat.h +449 -1238
- data/ext/pg_query/include/pgtime.h +14 -4
- data/ext/pg_query/include/pl_gram.h +126 -128
- data/ext/pg_query/include/pl_reserved_kwlist.h +1 -1
- data/ext/pg_query/include/pl_reserved_kwlist_d.h +10 -10
- data/ext/pg_query/include/pl_unreserved_kwlist.h +2 -3
- data/ext/pg_query/include/pl_unreserved_kwlist_d.h +54 -56
- data/ext/pg_query/include/plerrcodes.h +9 -1
- data/ext/pg_query/include/plpgsql.h +52 -54
- data/ext/pg_query/include/port/atomics/arch-arm.h +7 -1
- data/ext/pg_query/include/port/atomics/arch-ppc.h +1 -1
- data/ext/pg_query/include/port/atomics/arch-x86.h +1 -1
- data/ext/pg_query/include/port/atomics/fallback.h +1 -1
- data/ext/pg_query/include/port/atomics/generic-gcc.h +3 -3
- data/ext/pg_query/include/port/atomics/generic.h +1 -1
- data/ext/pg_query/include/port/atomics.h +1 -1
- data/ext/pg_query/include/port/pg_bitutils.h +40 -10
- data/ext/pg_query/include/port/pg_bswap.h +1 -1
- data/ext/pg_query/include/port/pg_crc32c.h +1 -1
- data/ext/pg_query/include/port.h +71 -46
- data/ext/pg_query/include/portability/instr_time.h +1 -1
- data/ext/pg_query/include/postgres.h +60 -16
- data/ext/pg_query/include/postmaster/autovacuum.h +17 -17
- data/ext/pg_query/include/postmaster/auxprocess.h +20 -0
- data/ext/pg_query/include/postmaster/bgworker.h +2 -1
- data/ext/pg_query/include/postmaster/bgworker_internals.h +2 -2
- data/ext/pg_query/include/postmaster/bgwriter.h +5 -5
- data/ext/pg_query/include/postmaster/fork_process.h +1 -1
- data/ext/pg_query/include/postmaster/interrupt.h +1 -1
- data/ext/pg_query/include/postmaster/pgarch.h +42 -8
- data/ext/pg_query/include/postmaster/postmaster.h +18 -17
- data/ext/pg_query/include/postmaster/startup.h +39 -0
- data/ext/pg_query/include/postmaster/syslogger.h +15 -10
- data/ext/pg_query/include/postmaster/walwriter.h +3 -3
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +1419 -914
- data/ext/pg_query/include/protobuf/pg_query.pb.h +43678 -32769
- data/ext/pg_query/include/regex/regex.h +18 -16
- data/ext/pg_query/include/replication/logicallauncher.h +3 -5
- data/ext/pg_query/include/replication/logicalproto.h +161 -17
- data/ext/pg_query/include/replication/logicalworker.h +1 -1
- data/ext/pg_query/include/replication/origin.h +7 -7
- data/ext/pg_query/include/replication/reorderbuffer.h +259 -42
- data/ext/pg_query/include/replication/slot.h +22 -11
- data/ext/pg_query/include/replication/syncrep.h +5 -5
- data/ext/pg_query/include/replication/walreceiver.h +145 -13
- data/ext/pg_query/include/replication/walsender.h +8 -8
- data/ext/pg_query/include/rewrite/prs2lock.h +1 -1
- data/ext/pg_query/include/rewrite/rewriteHandler.h +1 -3
- data/ext/pg_query/include/rewrite/rewriteManip.h +1 -1
- data/ext/pg_query/include/rewrite/rewriteSupport.h +1 -1
- data/ext/pg_query/include/storage/backendid.h +3 -3
- data/ext/pg_query/include/storage/block.h +4 -10
- data/ext/pg_query/include/storage/buf.h +1 -1
- data/ext/pg_query/include/storage/bufmgr.h +19 -14
- data/ext/pg_query/include/storage/bufpage.h +6 -8
- data/ext/pg_query/include/storage/condition_variable.h +13 -2
- data/ext/pg_query/include/storage/dsm.h +4 -1
- data/ext/pg_query/include/storage/dsm_impl.h +3 -2
- data/ext/pg_query/include/storage/fd.h +33 -3
- data/ext/pg_query/include/storage/fileset.h +40 -0
- data/ext/pg_query/include/storage/ipc.h +4 -1
- data/ext/pg_query/include/storage/item.h +1 -1
- data/ext/pg_query/include/storage/itemid.h +1 -1
- data/ext/pg_query/include/storage/itemptr.h +3 -1
- data/ext/pg_query/include/storage/large_object.h +2 -2
- data/ext/pg_query/include/storage/latch.h +9 -13
- data/ext/pg_query/include/storage/lmgr.h +2 -1
- data/ext/pg_query/include/storage/lock.h +11 -8
- data/ext/pg_query/include/storage/lockdefs.h +2 -2
- data/ext/pg_query/include/storage/lwlock.h +5 -32
- data/ext/pg_query/include/storage/lwlocknames.h +0 -1
- data/ext/pg_query/include/storage/off.h +1 -1
- data/ext/pg_query/include/storage/pg_sema.h +1 -1
- data/ext/pg_query/include/storage/pg_shmem.h +9 -7
- data/ext/pg_query/include/storage/pmsignal.h +15 -4
- data/ext/pg_query/include/storage/predicate.h +4 -4
- data/ext/pg_query/include/storage/proc.h +173 -59
- data/ext/pg_query/include/storage/procarray.h +98 -0
- data/ext/pg_query/include/storage/proclist_types.h +1 -1
- data/ext/pg_query/include/storage/procsignal.h +3 -7
- data/ext/pg_query/include/storage/relfilenode.h +1 -1
- data/ext/pg_query/include/storage/s_lock.h +60 -21
- data/ext/pg_query/include/storage/sharedfileset.h +3 -11
- data/ext/pg_query/include/storage/shm_mq.h +5 -4
- data/ext/pg_query/include/storage/shm_toc.h +1 -1
- data/ext/pg_query/include/storage/shmem.h +1 -1
- data/ext/pg_query/include/storage/sinval.h +3 -3
- data/ext/pg_query/include/storage/sinvaladt.h +1 -1
- data/ext/pg_query/include/storage/smgr.h +10 -8
- data/ext/pg_query/include/storage/spin.h +2 -2
- data/ext/pg_query/include/storage/standby.h +13 -6
- data/ext/pg_query/include/storage/standbydefs.h +2 -2
- data/ext/pg_query/include/storage/sync.h +7 -3
- data/ext/pg_query/include/tcop/cmdtag.h +1 -1
- data/ext/pg_query/include/tcop/cmdtaglist.h +3 -2
- data/ext/pg_query/include/tcop/deparse_utility.h +1 -1
- data/ext/pg_query/include/tcop/dest.h +1 -1
- data/ext/pg_query/include/tcop/fastpath.h +1 -2
- data/ext/pg_query/include/tcop/pquery.h +1 -1
- data/ext/pg_query/include/tcop/tcopprot.h +19 -11
- data/ext/pg_query/include/tcop/utility.h +7 -3
- data/ext/pg_query/include/tsearch/ts_cache.h +2 -2
- data/ext/pg_query/include/utils/acl.h +24 -3
- data/ext/pg_query/include/utils/aclchk_internal.h +1 -1
- data/ext/pg_query/include/utils/array.h +7 -2
- data/ext/pg_query/include/utils/backend_progress.h +44 -0
- data/ext/pg_query/include/utils/backend_status.h +321 -0
- data/ext/pg_query/include/utils/builtins.h +10 -11
- data/ext/pg_query/include/utils/bytea.h +3 -2
- data/ext/pg_query/include/utils/catcache.h +1 -1
- data/ext/pg_query/include/utils/date.h +1 -1
- data/ext/pg_query/include/utils/datetime.h +8 -7
- data/ext/pg_query/include/utils/datum.h +9 -1
- data/ext/pg_query/include/utils/dsa.h +1 -1
- data/ext/pg_query/include/utils/dynahash.h +4 -3
- data/ext/pg_query/include/utils/elog.h +52 -21
- data/ext/pg_query/include/utils/errcodes.h +2 -0
- data/ext/pg_query/include/utils/expandeddatum.h +1 -1
- data/ext/pg_query/include/utils/expandedrecord.h +1 -1
- data/ext/pg_query/include/utils/float.h +7 -7
- data/ext/pg_query/include/utils/fmgroids.h +1300 -696
- data/ext/pg_query/include/utils/fmgrprotos.h +199 -16
- data/ext/pg_query/include/utils/fmgrtab.h +6 -5
- data/ext/pg_query/include/utils/guc.h +69 -43
- data/ext/pg_query/include/utils/guc_tables.h +23 -19
- data/ext/pg_query/include/utils/hsearch.h +15 -11
- data/ext/pg_query/include/utils/inval.h +4 -1
- data/ext/pg_query/include/utils/lsyscache.h +11 -1
- data/ext/pg_query/include/utils/memdebug.h +1 -1
- data/ext/pg_query/include/utils/memutils.h +8 -3
- data/ext/pg_query/include/utils/numeric.h +19 -5
- data/ext/pg_query/include/utils/palloc.h +25 -3
- data/ext/pg_query/include/utils/partcache.h +1 -1
- data/ext/pg_query/include/utils/pg_locale.h +17 -9
- data/ext/pg_query/include/utils/pg_lsn.h +1 -1
- data/ext/pg_query/include/utils/pgstat_internal.h +784 -0
- data/ext/pg_query/include/utils/pidfile.h +1 -1
- data/ext/pg_query/include/utils/plancache.h +6 -5
- data/ext/pg_query/include/utils/portal.h +10 -12
- data/ext/pg_query/include/utils/ps_status.h +1 -1
- data/ext/pg_query/include/utils/queryenvironment.h +1 -1
- data/ext/pg_query/include/utils/queryjumble.h +88 -0
- data/ext/pg_query/include/utils/regproc.h +14 -3
- data/ext/pg_query/include/utils/rel.h +71 -19
- data/ext/pg_query/include/utils/relcache.h +8 -5
- data/ext/pg_query/include/utils/reltrigger.h +1 -1
- data/ext/pg_query/include/utils/resowner.h +1 -1
- data/ext/pg_query/include/utils/rls.h +2 -2
- data/ext/pg_query/include/utils/ruleutils.h +4 -1
- data/ext/pg_query/include/utils/sharedtuplestore.h +1 -1
- data/ext/pg_query/include/utils/snapmgr.h +34 -14
- data/ext/pg_query/include/utils/snapshot.h +14 -1
- data/ext/pg_query/include/utils/sortsupport.h +117 -2
- data/ext/pg_query/include/utils/syscache.h +6 -1
- data/ext/pg_query/include/utils/timeout.h +11 -4
- data/ext/pg_query/include/utils/timestamp.h +6 -5
- data/ext/pg_query/include/utils/tuplesort.h +25 -11
- data/ext/pg_query/include/utils/tuplestore.h +2 -2
- data/ext/pg_query/include/utils/typcache.h +24 -17
- data/ext/pg_query/include/utils/tzparser.h +1 -1
- data/ext/pg_query/include/utils/varlena.h +5 -3
- data/ext/pg_query/include/utils/wait_event.h +289 -0
- data/ext/pg_query/include/utils/xml.h +4 -4
- data/ext/pg_query/pg_query.pb-c.c +4302 -2304
- data/ext/pg_query/pg_query_deparse.c +1106 -373
- data/ext/pg_query/pg_query_fingerprint.c +30 -10
- data/ext/pg_query/pg_query_json_plpgsql.c +0 -25
- data/ext/pg_query/pg_query_normalize.c +1 -1
- data/ext/pg_query/pg_query_outfuncs_json.c +54 -16
- data/ext/pg_query/pg_query_outfuncs_protobuf.c +70 -10
- data/ext/pg_query/pg_query_parse.c +1 -1
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +42 -8
- data/ext/pg_query/pg_query_scan.c +2 -1
- data/ext/pg_query/pg_query_split.c +3 -2
- data/ext/pg_query/src_backend_catalog_namespace.c +20 -9
- data/ext/pg_query/src_backend_catalog_pg_proc.c +4 -1
- data/ext/pg_query/src_backend_commands_define.c +11 -1
- data/ext/pg_query/src_backend_nodes_bitmapset.c +3 -1
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +401 -76
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +290 -46
- data/ext/pg_query/src_backend_nodes_extensible.c +1 -1
- data/ext/pg_query/src_backend_nodes_list.c +74 -11
- data/ext/pg_query/src_backend_nodes_makefuncs.c +5 -4
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +55 -12
- data/ext/pg_query/src_backend_nodes_value.c +28 -19
- data/ext/pg_query/src_backend_parser_gram.c +33874 -31261
- data/ext/pg_query/src_backend_parser_parser.c +26 -7
- data/ext/pg_query/src_backend_parser_scan.c +172 -209
- data/ext/pg_query/src_backend_parser_scansup.c +4 -28
- data/ext/pg_query/src_backend_postmaster_postmaster.c +77 -106
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +13 -4
- data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +5 -4
- data/ext/pg_query/src_backend_tcop_postgres.c +62 -23
- data/ext/pg_query/src_backend_utils_activity_pgstat_database.c +140 -0
- data/ext/pg_query/src_backend_utils_adt_datum.c +13 -1
- data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +1 -1
- data/ext/pg_query/src_backend_utils_adt_format_type.c +6 -2
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +71 -5
- data/ext/pg_query/src_backend_utils_error_assert.c +16 -14
- data/ext/pg_query/src_backend_utils_error_elog.c +172 -99
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +12 -17
- data/ext/pg_query/src_backend_utils_hash_dynahash.c +40 -10
- data/ext/pg_query/src_backend_utils_init_globals.c +5 -5
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +55 -66
- data/ext/pg_query/src_backend_utils_misc_guc.c +206 -45
- data/ext/pg_query/src_backend_utils_mmgr_aset.c +7 -5
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +123 -35
- data/ext/pg_query/src_common_encnames.c +1 -1
- data/ext/pg_query/src_common_hashfn.c +3 -3
- data/ext/pg_query/src_common_keywords.c +15 -2
- data/ext/pg_query/src_common_kwlist_d.h +517 -494
- data/ext/pg_query/src_common_kwlookup.c +1 -1
- data/ext/pg_query/src_common_pg_prng.c +152 -0
- data/ext/pg_query/src_common_psprintf.c +1 -1
- data/ext/pg_query/src_common_string.c +7 -1
- data/ext/pg_query/src_common_stringinfo.c +1 -1
- data/ext/pg_query/src_common_wchar.c +701 -109
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +45 -20
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +1 -18
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +1233 -1259
- data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +1 -1
- data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +10 -10
- data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +2 -2
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +54 -56
- data/ext/pg_query/src_port_pg_bitutils.c +41 -31
- data/ext/pg_query/src_port_pgsleep.c +1 -1
- data/ext/pg_query/src_port_pgstrcasecmp.c +1 -1
- data/ext/pg_query/src_port_qsort.c +12 -224
- data/ext/pg_query/src_port_snprintf.c +37 -13
- data/ext/pg_query/src_port_strerror.c +9 -19
- data/ext/pg_query/src_port_strnlen.c +1 -1
- data/lib/pg_query/filter_columns.rb +1 -1
- data/lib/pg_query/fingerprint.rb +5 -1
- data/lib/pg_query/node.rb +2 -2
- data/lib/pg_query/param_refs.rb +1 -1
- data/lib/pg_query/parse.rb +20 -8
- data/lib/pg_query/pg_query_pb.rb +1108 -942
- data/lib/pg_query/treewalker.rb +6 -0
- data/lib/pg_query/truncate.rb +1 -1
- data/lib/pg_query/version.rb +1 -1
- metadata +27 -17
- data/ext/pg_query/include/access/xloginsert.h +0 -64
- data/ext/pg_query/include/bootstrap/bootstrap.h +0 -62
- data/ext/pg_query/include/parser/parse_clause.h +0 -54
- data/ext/pg_query/include/parser/parse_collate.h +0 -27
- data/ext/pg_query/include/parser/parse_target.h +0 -46
- data/ext/pg_query/pg_query_ruby_freebsd.sym +0 -2
- data/ext/pg_query/src_backend_libpq_pqcomm.c +0 -659
- data/ext/pg_query/src_backend_parser_parse_expr.c +0 -313
- data/ext/pg_query/src_port_erand48.c +0 -127
- data/ext/pg_query/src_port_random.c +0 -31
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
// This file is autogenerated by ./scripts/generate_protobuf_and_funcs.rb
|
|
2
2
|
|
|
3
3
|
case T_Integer:
|
|
4
|
-
OUT_NODE(Integer, Integer, integer, INTEGER,
|
|
4
|
+
OUT_NODE(Integer, Integer, integer, INTEGER, Integer, integer);
|
|
5
|
+
break;
|
|
6
|
+
case T_Boolean:
|
|
7
|
+
OUT_NODE(Boolean, Boolean, boolean, BOOLEAN, Boolean, boolean);
|
|
5
8
|
break;
|
|
6
9
|
case T_Float:
|
|
7
|
-
OUT_NODE(Float, Float, float, FLOAT,
|
|
10
|
+
OUT_NODE(Float, Float, float, FLOAT, Float, float_);
|
|
8
11
|
break;
|
|
9
12
|
case T_String:
|
|
10
|
-
OUT_NODE(String, String, string, STRING,
|
|
13
|
+
OUT_NODE(String, String, string, STRING, String, string);
|
|
11
14
|
break;
|
|
12
15
|
case T_BitString:
|
|
13
|
-
OUT_NODE(BitString, BitString, bit_string, BIT_STRING,
|
|
14
|
-
break;
|
|
15
|
-
case T_Null:
|
|
16
|
-
OUT_NODE(Null, Null, null, NULL, Value, null);
|
|
16
|
+
OUT_NODE(BitString, BitString, bit_string, BIT_STRING, BitString, bit_string);
|
|
17
17
|
break;
|
|
18
18
|
case T_List:
|
|
19
19
|
OUT_NODE(List, List, list, LIST, List, list);
|
|
@@ -24,6 +24,9 @@ case T_IntList:
|
|
|
24
24
|
case T_OidList:
|
|
25
25
|
OUT_NODE(OidList, OidList, oid_list, OID_LIST, List, oid_list);
|
|
26
26
|
break;
|
|
27
|
+
case T_A_Const:
|
|
28
|
+
OUT_NODE(A_Const, AConst, a__const, A_CONST, A_Const, a_const);
|
|
29
|
+
break;
|
|
27
30
|
case T_Alias:
|
|
28
31
|
OUT_NODE(Alias, Alias, alias, ALIAS, Alias, alias);
|
|
29
32
|
break;
|
|
@@ -33,9 +36,6 @@ case T_RangeVar:
|
|
|
33
36
|
case T_TableFunc:
|
|
34
37
|
OUT_NODE(TableFunc, TableFunc, table_func, TABLE_FUNC, TableFunc, table_func);
|
|
35
38
|
break;
|
|
36
|
-
case T_Expr:
|
|
37
|
-
OUT_NODE(Expr, Expr, expr, EXPR, Expr, expr);
|
|
38
|
-
break;
|
|
39
39
|
case T_Var:
|
|
40
40
|
OUT_NODE(Var, Var, var, VAR, Var, var);
|
|
41
41
|
break;
|
|
@@ -177,6 +177,9 @@ case T_OnConflictExpr:
|
|
|
177
177
|
case T_IntoClause:
|
|
178
178
|
OUT_NODE(IntoClause, IntoClause, into_clause, INTO_CLAUSE, IntoClause, into_clause);
|
|
179
179
|
break;
|
|
180
|
+
case T_MergeAction:
|
|
181
|
+
OUT_NODE(MergeAction, MergeAction, merge_action, MERGE_ACTION, MergeAction, merge_action);
|
|
182
|
+
break;
|
|
180
183
|
case T_RawStmt:
|
|
181
184
|
OUT_NODE(RawStmt, RawStmt, raw_stmt, RAW_STMT, RawStmt, raw_stmt);
|
|
182
185
|
break;
|
|
@@ -192,9 +195,18 @@ case T_DeleteStmt:
|
|
|
192
195
|
case T_UpdateStmt:
|
|
193
196
|
OUT_NODE(UpdateStmt, UpdateStmt, update_stmt, UPDATE_STMT, UpdateStmt, update_stmt);
|
|
194
197
|
break;
|
|
198
|
+
case T_MergeStmt:
|
|
199
|
+
OUT_NODE(MergeStmt, MergeStmt, merge_stmt, MERGE_STMT, MergeStmt, merge_stmt);
|
|
200
|
+
break;
|
|
195
201
|
case T_SelectStmt:
|
|
196
202
|
OUT_NODE(SelectStmt, SelectStmt, select_stmt, SELECT_STMT, SelectStmt, select_stmt);
|
|
197
203
|
break;
|
|
204
|
+
case T_ReturnStmt:
|
|
205
|
+
OUT_NODE(ReturnStmt, ReturnStmt, return_stmt, RETURN_STMT, ReturnStmt, return_stmt);
|
|
206
|
+
break;
|
|
207
|
+
case T_PLAssignStmt:
|
|
208
|
+
OUT_NODE(PLAssignStmt, PLAssignStmt, plassign_stmt, PLASSIGN_STMT, PLAssignStmt, plassign_stmt);
|
|
209
|
+
break;
|
|
198
210
|
case T_AlterTableStmt:
|
|
199
211
|
OUT_NODE(AlterTableStmt, AlterTableStmt, alter_table_stmt, ALTER_TABLE_STMT, AlterTableStmt, alter_table_stmt);
|
|
200
212
|
break;
|
|
@@ -345,6 +357,9 @@ case T_CreateSchemaStmt:
|
|
|
345
357
|
case T_AlterDatabaseStmt:
|
|
346
358
|
OUT_NODE(AlterDatabaseStmt, AlterDatabaseStmt, alter_database_stmt, ALTER_DATABASE_STMT, AlterDatabaseStmt, alter_database_stmt);
|
|
347
359
|
break;
|
|
360
|
+
case T_AlterDatabaseRefreshCollStmt:
|
|
361
|
+
OUT_NODE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt, ALTER_DATABASE_REFRESH_COLL_STMT, AlterDatabaseRefreshCollStmt, alter_database_refresh_coll_stmt);
|
|
362
|
+
break;
|
|
348
363
|
case T_AlterDatabaseSetStmt:
|
|
349
364
|
OUT_NODE(AlterDatabaseSetStmt, AlterDatabaseSetStmt, alter_database_set_stmt, ALTER_DATABASE_SET_STMT, AlterDatabaseSetStmt, alter_database_set_stmt);
|
|
350
365
|
break;
|
|
@@ -531,9 +546,6 @@ case T_ColumnRef:
|
|
|
531
546
|
case T_ParamRef:
|
|
532
547
|
OUT_NODE(ParamRef, ParamRef, param_ref, PARAM_REF, ParamRef, param_ref);
|
|
533
548
|
break;
|
|
534
|
-
case T_A_Const:
|
|
535
|
-
OUT_NODE(A_Const, AConst, a__const, A_CONST, A_Const, a_const);
|
|
536
|
-
break;
|
|
537
549
|
case T_FuncCall:
|
|
538
550
|
OUT_NODE(FuncCall, FuncCall, func_call, FUNC_CALL, FuncCall, func_call);
|
|
539
551
|
break;
|
|
@@ -591,6 +603,9 @@ case T_ColumnDef:
|
|
|
591
603
|
case T_IndexElem:
|
|
592
604
|
OUT_NODE(IndexElem, IndexElem, index_elem, INDEX_ELEM, IndexElem, index_elem);
|
|
593
605
|
break;
|
|
606
|
+
case T_StatsElem:
|
|
607
|
+
OUT_NODE(StatsElem, StatsElem, stats_elem, STATS_ELEM, StatsElem, stats_elem);
|
|
608
|
+
break;
|
|
594
609
|
case T_Constraint:
|
|
595
610
|
OUT_NODE(Constraint, Constraint, constraint, CONSTRAINT, Constraint, constraint);
|
|
596
611
|
break;
|
|
@@ -651,9 +666,18 @@ case T_InferClause:
|
|
|
651
666
|
case T_OnConflictClause:
|
|
652
667
|
OUT_NODE(OnConflictClause, OnConflictClause, on_conflict_clause, ON_CONFLICT_CLAUSE, OnConflictClause, on_conflict_clause);
|
|
653
668
|
break;
|
|
669
|
+
case T_CTESearchClause:
|
|
670
|
+
OUT_NODE(CTESearchClause, CTESearchClause, ctesearch_clause, CTESEARCH_CLAUSE, CTESearchClause, ctesearch_clause);
|
|
671
|
+
break;
|
|
672
|
+
case T_CTECycleClause:
|
|
673
|
+
OUT_NODE(CTECycleClause, CTECycleClause, ctecycle_clause, CTECYCLE_CLAUSE, CTECycleClause, ctecycle_clause);
|
|
674
|
+
break;
|
|
654
675
|
case T_CommonTableExpr:
|
|
655
676
|
OUT_NODE(CommonTableExpr, CommonTableExpr, common_table_expr, COMMON_TABLE_EXPR, CommonTableExpr, common_table_expr);
|
|
656
677
|
break;
|
|
678
|
+
case T_MergeWhenClause:
|
|
679
|
+
OUT_NODE(MergeWhenClause, MergeWhenClause, merge_when_clause, MERGE_WHEN_CLAUSE, MergeWhenClause, merge_when_clause);
|
|
680
|
+
break;
|
|
657
681
|
case T_RoleSpec:
|
|
658
682
|
OUT_NODE(RoleSpec, RoleSpec, role_spec, ROLE_SPEC, RoleSpec, role_spec);
|
|
659
683
|
break;
|
|
@@ -678,6 +702,12 @@ case T_PartitionCmd:
|
|
|
678
702
|
case T_VacuumRelation:
|
|
679
703
|
OUT_NODE(VacuumRelation, VacuumRelation, vacuum_relation, VACUUM_RELATION, VacuumRelation, vacuum_relation);
|
|
680
704
|
break;
|
|
705
|
+
case T_PublicationObjSpec:
|
|
706
|
+
OUT_NODE(PublicationObjSpec, PublicationObjSpec, publication_obj_spec, PUBLICATION_OBJ_SPEC, PublicationObjSpec, publication_obj_spec);
|
|
707
|
+
break;
|
|
708
|
+
case T_PublicationTable:
|
|
709
|
+
OUT_NODE(PublicationTable, PublicationTable, publication_table, PUBLICATION_TABLE, PublicationTable, publication_table);
|
|
710
|
+
break;
|
|
681
711
|
case T_InlineCodeBlock:
|
|
682
712
|
OUT_NODE(InlineCodeBlock, InlineCodeBlock, inline_code_block, INLINE_CODE_BLOCK, InlineCodeBlock, inline_code_block);
|
|
683
713
|
break;
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
static void _outAlias(OUT_TYPE(Alias, Alias) out_node, const Alias *node);
|
|
4
4
|
static void _outRangeVar(OUT_TYPE(RangeVar, RangeVar) out_node, const RangeVar *node);
|
|
5
5
|
static void _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out_node, const TableFunc *node);
|
|
6
|
-
static void _outExpr(OUT_TYPE(Expr, Expr) out_node, const Expr *node);
|
|
7
6
|
static void _outVar(OUT_TYPE(Var, Var) out_node, const Var *node);
|
|
8
7
|
static void _outParam(OUT_TYPE(Param, Param) out_node, const Param *node);
|
|
9
8
|
static void _outAggref(OUT_TYPE(Aggref, Aggref) out_node, const Aggref *node);
|
|
@@ -51,12 +50,16 @@ static void _outJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) out_node, const JoinExpr *
|
|
|
51
50
|
static void _outFromExpr(OUT_TYPE(FromExpr, FromExpr) out_node, const FromExpr *node);
|
|
52
51
|
static void _outOnConflictExpr(OUT_TYPE(OnConflictExpr, OnConflictExpr) out_node, const OnConflictExpr *node);
|
|
53
52
|
static void _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out_node, const IntoClause *node);
|
|
53
|
+
static void _outMergeAction(OUT_TYPE(MergeAction, MergeAction) out_node, const MergeAction *node);
|
|
54
54
|
static void _outRawStmt(OUT_TYPE(RawStmt, RawStmt) out_node, const RawStmt *node);
|
|
55
55
|
static void _outQuery(OUT_TYPE(Query, Query) out_node, const Query *node);
|
|
56
56
|
static void _outInsertStmt(OUT_TYPE(InsertStmt, InsertStmt) out_node, const InsertStmt *node);
|
|
57
57
|
static void _outDeleteStmt(OUT_TYPE(DeleteStmt, DeleteStmt) out_node, const DeleteStmt *node);
|
|
58
58
|
static void _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out_node, const UpdateStmt *node);
|
|
59
|
+
static void _outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out_node, const MergeStmt *node);
|
|
59
60
|
static void _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out_node, const SelectStmt *node);
|
|
61
|
+
static void _outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out_node, const ReturnStmt *node);
|
|
62
|
+
static void _outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out_node, const PLAssignStmt *node);
|
|
60
63
|
static void _outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out_node, const AlterTableStmt *node);
|
|
61
64
|
static void _outAlterTableCmd(OUT_TYPE(AlterTableCmd, AlterTableCmd) out_node, const AlterTableCmd *node);
|
|
62
65
|
static void _outAlterDomainStmt(OUT_TYPE(AlterDomainStmt, AlterDomainStmt) out_node, const AlterDomainStmt *node);
|
|
@@ -107,6 +110,7 @@ static void _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out_node, const R
|
|
|
107
110
|
static void _outCheckPointStmt(OUT_TYPE(CheckPointStmt, CheckPointStmt) out_node, const CheckPointStmt *node);
|
|
108
111
|
static void _outCreateSchemaStmt(OUT_TYPE(CreateSchemaStmt, CreateSchemaStmt) out_node, const CreateSchemaStmt *node);
|
|
109
112
|
static void _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out_node, const AlterDatabaseStmt *node);
|
|
113
|
+
static void _outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out_node, const AlterDatabaseRefreshCollStmt *node);
|
|
110
114
|
static void _outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out_node, const AlterDatabaseSetStmt *node);
|
|
111
115
|
static void _outAlterRoleSetStmt(OUT_TYPE(AlterRoleSetStmt, AlterRoleSetStmt) out_node, const AlterRoleSetStmt *node);
|
|
112
116
|
static void _outCreateConversionStmt(OUT_TYPE(CreateConversionStmt, CreateConversionStmt) out_node, const CreateConversionStmt *node);
|
|
@@ -169,7 +173,6 @@ static void _outAlterStatsStmt(OUT_TYPE(AlterStatsStmt, AlterStatsStmt) out_node
|
|
|
169
173
|
static void _outAExpr(OUT_TYPE(A_Expr, AExpr) out_node, const A_Expr *node);
|
|
170
174
|
static void _outColumnRef(OUT_TYPE(ColumnRef, ColumnRef) out_node, const ColumnRef *node);
|
|
171
175
|
static void _outParamRef(OUT_TYPE(ParamRef, ParamRef) out_node, const ParamRef *node);
|
|
172
|
-
static void _outAConst(OUT_TYPE(A_Const, AConst) out_node, const A_Const *node);
|
|
173
176
|
static void _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out_node, const FuncCall *node);
|
|
174
177
|
static void _outAStar(OUT_TYPE(A_Star, AStar) out_node, const A_Star *node);
|
|
175
178
|
static void _outAIndices(OUT_TYPE(A_Indices, AIndices) out_node, const A_Indices *node);
|
|
@@ -189,6 +192,7 @@ static void _outRangeTableFuncCol(OUT_TYPE(RangeTableFuncCol, RangeTableFuncCol)
|
|
|
189
192
|
static void _outTypeName(OUT_TYPE(TypeName, TypeName) out_node, const TypeName *node);
|
|
190
193
|
static void _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out_node, const ColumnDef *node);
|
|
191
194
|
static void _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out_node, const IndexElem *node);
|
|
195
|
+
static void _outStatsElem(OUT_TYPE(StatsElem, StatsElem) out_node, const StatsElem *node);
|
|
192
196
|
static void _outConstraint(OUT_TYPE(Constraint, Constraint) out_node, const Constraint *node);
|
|
193
197
|
static void _outDefElem(OUT_TYPE(DefElem, DefElem) out_node, const DefElem *node);
|
|
194
198
|
static void _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out_node, const RangeTblEntry *node);
|
|
@@ -209,7 +213,10 @@ static void _outXmlSerialize(OUT_TYPE(XmlSerialize, XmlSerialize) out_node, cons
|
|
|
209
213
|
static void _outWithClause(OUT_TYPE(WithClause, WithClause) out_node, const WithClause *node);
|
|
210
214
|
static void _outInferClause(OUT_TYPE(InferClause, InferClause) out_node, const InferClause *node);
|
|
211
215
|
static void _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out_node, const OnConflictClause *node);
|
|
216
|
+
static void _outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out_node, const CTESearchClause *node);
|
|
217
|
+
static void _outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out_node, const CTECycleClause *node);
|
|
212
218
|
static void _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out_node, const CommonTableExpr *node);
|
|
219
|
+
static void _outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out_node, const MergeWhenClause *node);
|
|
213
220
|
static void _outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out_node, const RoleSpec *node);
|
|
214
221
|
static void _outTriggerTransition(OUT_TYPE(TriggerTransition, TriggerTransition) out_node, const TriggerTransition *node);
|
|
215
222
|
static void _outPartitionElem(OUT_TYPE(PartitionElem, PartitionElem) out_node, const PartitionElem *node);
|
|
@@ -218,6 +225,8 @@ static void _outPartitionBoundSpec(OUT_TYPE(PartitionBoundSpec, PartitionBoundSp
|
|
|
218
225
|
static void _outPartitionRangeDatum(OUT_TYPE(PartitionRangeDatum, PartitionRangeDatum) out_node, const PartitionRangeDatum *node);
|
|
219
226
|
static void _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out_node, const PartitionCmd *node);
|
|
220
227
|
static void _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out_node, const VacuumRelation *node);
|
|
228
|
+
static void _outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out_node, const PublicationObjSpec *node);
|
|
229
|
+
static void _outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out_node, const PublicationTable *node);
|
|
221
230
|
static void _outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out_node, const InlineCodeBlock *node);
|
|
222
231
|
static void _outCallContext(OUT_TYPE(CallContext, CallContext) out_node, const CallContext *node);
|
|
223
232
|
|
|
@@ -259,15 +268,10 @@ _outTableFunc(OUT_TYPE(TableFunc, TableFunc) out, const TableFunc *node)
|
|
|
259
268
|
WRITE_INT_FIELD(location, location, location);
|
|
260
269
|
}
|
|
261
270
|
|
|
262
|
-
static void
|
|
263
|
-
_outExpr(OUT_TYPE(Expr, Expr) out, const Expr *node)
|
|
264
|
-
{
|
|
265
|
-
}
|
|
266
|
-
|
|
267
271
|
static void
|
|
268
272
|
_outVar(OUT_TYPE(Var, Var) out, const Var *node)
|
|
269
273
|
{
|
|
270
|
-
|
|
274
|
+
WRITE_INT_FIELD(varno, varno, varno);
|
|
271
275
|
WRITE_INT_FIELD(varattno, varattno, varattno);
|
|
272
276
|
WRITE_UINT_FIELD(vartype, vartype, vartype);
|
|
273
277
|
WRITE_INT_FIELD(vartypmod, vartypmod, vartypmod);
|
|
@@ -308,6 +312,8 @@ _outAggref(OUT_TYPE(Aggref, Aggref) out, const Aggref *node)
|
|
|
308
312
|
WRITE_CHAR_FIELD(aggkind, aggkind, aggkind);
|
|
309
313
|
WRITE_UINT_FIELD(agglevelsup, agglevelsup, agglevelsup);
|
|
310
314
|
WRITE_ENUM_FIELD(AggSplit, aggsplit, aggsplit, aggsplit);
|
|
315
|
+
WRITE_INT_FIELD(aggno, aggno, aggno);
|
|
316
|
+
WRITE_INT_FIELD(aggtransno, aggtransno, aggtransno);
|
|
311
317
|
WRITE_INT_FIELD(location, location, location);
|
|
312
318
|
}
|
|
313
319
|
|
|
@@ -341,6 +347,7 @@ _outSubscriptingRef(OUT_TYPE(SubscriptingRef, SubscriptingRef) out, const Subscr
|
|
|
341
347
|
{
|
|
342
348
|
WRITE_UINT_FIELD(refcontainertype, refcontainertype, refcontainertype);
|
|
343
349
|
WRITE_UINT_FIELD(refelemtype, refelemtype, refelemtype);
|
|
350
|
+
WRITE_UINT_FIELD(refrestype, refrestype, refrestype);
|
|
344
351
|
WRITE_INT_FIELD(reftypmod, reftypmod, reftypmod);
|
|
345
352
|
WRITE_UINT_FIELD(refcollid, refcollid, refcollid);
|
|
346
353
|
WRITE_LIST_FIELD(refupperindexpr, refupperindexpr, refupperindexpr);
|
|
@@ -416,6 +423,8 @@ _outScalarArrayOpExpr(OUT_TYPE(ScalarArrayOpExpr, ScalarArrayOpExpr) out, const
|
|
|
416
423
|
{
|
|
417
424
|
WRITE_UINT_FIELD(opno, opno, opno);
|
|
418
425
|
WRITE_UINT_FIELD(opfuncid, opfuncid, opfuncid);
|
|
426
|
+
WRITE_UINT_FIELD(hashfuncid, hashfuncid, hashfuncid);
|
|
427
|
+
WRITE_UINT_FIELD(negfuncid, negfuncid, negfuncid);
|
|
419
428
|
WRITE_BOOL_FIELD(use_or, useOr, useOr);
|
|
420
429
|
WRITE_UINT_FIELD(inputcollid, inputcollid, inputcollid);
|
|
421
430
|
WRITE_LIST_FIELD(args, args, args);
|
|
@@ -734,6 +743,7 @@ _outJoinExpr(OUT_TYPE(JoinExpr, JoinExpr) out, const JoinExpr *node)
|
|
|
734
743
|
WRITE_NODE_PTR_FIELD(larg, larg, larg);
|
|
735
744
|
WRITE_NODE_PTR_FIELD(rarg, rarg, rarg);
|
|
736
745
|
WRITE_LIST_FIELD(using_clause, usingClause, usingClause);
|
|
746
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
|
|
737
747
|
WRITE_NODE_PTR_FIELD(quals, quals, quals);
|
|
738
748
|
WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, alias, alias, alias);
|
|
739
749
|
WRITE_INT_FIELD(rtindex, rtindex, rtindex);
|
|
@@ -772,6 +782,17 @@ _outIntoClause(OUT_TYPE(IntoClause, IntoClause) out, const IntoClause *node)
|
|
|
772
782
|
WRITE_BOOL_FIELD(skip_data, skipData, skipData);
|
|
773
783
|
}
|
|
774
784
|
|
|
785
|
+
static void
|
|
786
|
+
_outMergeAction(OUT_TYPE(MergeAction, MergeAction) out, const MergeAction *node)
|
|
787
|
+
{
|
|
788
|
+
WRITE_BOOL_FIELD(matched, matched, matched);
|
|
789
|
+
WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType);
|
|
790
|
+
WRITE_ENUM_FIELD(OverridingKind, override, override, override);
|
|
791
|
+
WRITE_NODE_PTR_FIELD(qual, qual, qual);
|
|
792
|
+
WRITE_LIST_FIELD(target_list, targetList, targetList);
|
|
793
|
+
WRITE_LIST_FIELD(update_colnos, updateColnos, updateColnos);
|
|
794
|
+
}
|
|
795
|
+
|
|
775
796
|
static void
|
|
776
797
|
_outRawStmt(OUT_TYPE(RawStmt, RawStmt) out, const RawStmt *node)
|
|
777
798
|
{
|
|
@@ -797,14 +818,18 @@ _outQuery(OUT_TYPE(Query, Query) out, const Query *node)
|
|
|
797
818
|
WRITE_BOOL_FIELD(has_modifying_cte, hasModifyingCTE, hasModifyingCTE);
|
|
798
819
|
WRITE_BOOL_FIELD(has_for_update, hasForUpdate, hasForUpdate);
|
|
799
820
|
WRITE_BOOL_FIELD(has_row_security, hasRowSecurity, hasRowSecurity);
|
|
821
|
+
WRITE_BOOL_FIELD(is_return, isReturn, isReturn);
|
|
800
822
|
WRITE_LIST_FIELD(cte_list, cteList, cteList);
|
|
801
823
|
WRITE_LIST_FIELD(rtable, rtable, rtable);
|
|
802
824
|
WRITE_SPECIFIC_NODE_PTR_FIELD(FromExpr, from_expr, jointree, jointree, jointree);
|
|
825
|
+
WRITE_LIST_FIELD(merge_action_list, mergeActionList, mergeActionList);
|
|
826
|
+
WRITE_BOOL_FIELD(merge_use_outer_join, mergeUseOuterJoin, mergeUseOuterJoin);
|
|
803
827
|
WRITE_LIST_FIELD(target_list, targetList, targetList);
|
|
804
828
|
WRITE_ENUM_FIELD(OverridingKind, override, override, override);
|
|
805
829
|
WRITE_SPECIFIC_NODE_PTR_FIELD(OnConflictExpr, on_conflict_expr, on_conflict, onConflict, onConflict);
|
|
806
830
|
WRITE_LIST_FIELD(returning_list, returningList, returningList);
|
|
807
831
|
WRITE_LIST_FIELD(group_clause, groupClause, groupClause);
|
|
832
|
+
WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
|
|
808
833
|
WRITE_LIST_FIELD(grouping_sets, groupingSets, groupingSets);
|
|
809
834
|
WRITE_NODE_PTR_FIELD(having_qual, havingQual, havingQual);
|
|
810
835
|
WRITE_LIST_FIELD(window_clause, windowClause, windowClause);
|
|
@@ -854,6 +879,16 @@ _outUpdateStmt(OUT_TYPE(UpdateStmt, UpdateStmt) out, const UpdateStmt *node)
|
|
|
854
879
|
WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
|
|
855
880
|
}
|
|
856
881
|
|
|
882
|
+
static void
|
|
883
|
+
_outMergeStmt(OUT_TYPE(MergeStmt, MergeStmt) out, const MergeStmt *node)
|
|
884
|
+
{
|
|
885
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
886
|
+
WRITE_NODE_PTR_FIELD(source_relation, sourceRelation, sourceRelation);
|
|
887
|
+
WRITE_NODE_PTR_FIELD(join_condition, joinCondition, joinCondition);
|
|
888
|
+
WRITE_LIST_FIELD(merge_when_clauses, mergeWhenClauses, mergeWhenClauses);
|
|
889
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(WithClause, with_clause, with_clause, withClause, withClause);
|
|
890
|
+
}
|
|
891
|
+
|
|
857
892
|
static void
|
|
858
893
|
_outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node)
|
|
859
894
|
{
|
|
@@ -863,6 +898,7 @@ _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node)
|
|
|
863
898
|
WRITE_LIST_FIELD(from_clause, fromClause, fromClause);
|
|
864
899
|
WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
|
|
865
900
|
WRITE_LIST_FIELD(group_clause, groupClause, groupClause);
|
|
901
|
+
WRITE_BOOL_FIELD(group_distinct, groupDistinct, groupDistinct);
|
|
866
902
|
WRITE_NODE_PTR_FIELD(having_clause, havingClause, havingClause);
|
|
867
903
|
WRITE_LIST_FIELD(window_clause, windowClause, windowClause);
|
|
868
904
|
WRITE_LIST_FIELD(values_lists, valuesLists, valuesLists);
|
|
@@ -878,12 +914,28 @@ _outSelectStmt(OUT_TYPE(SelectStmt, SelectStmt) out, const SelectStmt *node)
|
|
|
878
914
|
WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, rarg, rarg, rarg);
|
|
879
915
|
}
|
|
880
916
|
|
|
917
|
+
static void
|
|
918
|
+
_outReturnStmt(OUT_TYPE(ReturnStmt, ReturnStmt) out, const ReturnStmt *node)
|
|
919
|
+
{
|
|
920
|
+
WRITE_NODE_PTR_FIELD(returnval, returnval, returnval);
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
static void
|
|
924
|
+
_outPLAssignStmt(OUT_TYPE(PLAssignStmt, PLAssignStmt) out, const PLAssignStmt *node)
|
|
925
|
+
{
|
|
926
|
+
WRITE_STRING_FIELD(name, name, name);
|
|
927
|
+
WRITE_LIST_FIELD(indirection, indirection, indirection);
|
|
928
|
+
WRITE_INT_FIELD(nnames, nnames, nnames);
|
|
929
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(SelectStmt, select_stmt, val, val, val);
|
|
930
|
+
WRITE_INT_FIELD(location, location, location);
|
|
931
|
+
}
|
|
932
|
+
|
|
881
933
|
static void
|
|
882
934
|
_outAlterTableStmt(OUT_TYPE(AlterTableStmt, AlterTableStmt) out, const AlterTableStmt *node)
|
|
883
935
|
{
|
|
884
936
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
885
937
|
WRITE_LIST_FIELD(cmds, cmds, cmds);
|
|
886
|
-
WRITE_ENUM_FIELD(ObjectType,
|
|
938
|
+
WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
|
|
887
939
|
WRITE_BOOL_FIELD(missing_ok, missing_ok, missing_ok);
|
|
888
940
|
}
|
|
889
941
|
|
|
@@ -934,6 +986,7 @@ _outGrantStmt(OUT_TYPE(GrantStmt, GrantStmt) out, const GrantStmt *node)
|
|
|
934
986
|
WRITE_LIST_FIELD(privileges, privileges, privileges);
|
|
935
987
|
WRITE_LIST_FIELD(grantees, grantees, grantees);
|
|
936
988
|
WRITE_BOOL_FIELD(grant_option, grant_option, grant_option);
|
|
989
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(RoleSpec, role_spec, grantor, grantor, grantor);
|
|
937
990
|
WRITE_ENUM_FIELD(DropBehavior, behavior, behavior, behavior);
|
|
938
991
|
}
|
|
939
992
|
|
|
@@ -966,7 +1019,7 @@ _outClusterStmt(OUT_TYPE(ClusterStmt, ClusterStmt) out, const ClusterStmt *node)
|
|
|
966
1019
|
{
|
|
967
1020
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
968
1021
|
WRITE_STRING_FIELD(indexname, indexname, indexname);
|
|
969
|
-
|
|
1022
|
+
WRITE_LIST_FIELD(params, params, params);
|
|
970
1023
|
}
|
|
971
1024
|
|
|
972
1025
|
static void
|
|
@@ -1064,6 +1117,7 @@ _outIndexStmt(OUT_TYPE(IndexStmt, IndexStmt) out, const IndexStmt *node)
|
|
|
1064
1117
|
WRITE_UINT_FIELD(old_create_subid, oldCreateSubid, oldCreateSubid);
|
|
1065
1118
|
WRITE_UINT_FIELD(old_first_relfilenode_subid, oldFirstRelfilenodeSubid, oldFirstRelfilenodeSubid);
|
|
1066
1119
|
WRITE_BOOL_FIELD(unique, unique, unique);
|
|
1120
|
+
WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
|
|
1067
1121
|
WRITE_BOOL_FIELD(primary, primary, primary);
|
|
1068
1122
|
WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
|
|
1069
1123
|
WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
|
|
@@ -1083,6 +1137,7 @@ _outCreateFunctionStmt(OUT_TYPE(CreateFunctionStmt, CreateFunctionStmt) out, con
|
|
|
1083
1137
|
WRITE_LIST_FIELD(parameters, parameters, parameters);
|
|
1084
1138
|
WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, return_type, returnType, returnType);
|
|
1085
1139
|
WRITE_LIST_FIELD(options, options, options);
|
|
1140
|
+
WRITE_NODE_PTR_FIELD(sql_body, sql_body, sql_body);
|
|
1086
1141
|
}
|
|
1087
1142
|
|
|
1088
1143
|
static void
|
|
@@ -1214,7 +1269,7 @@ _outCreateTableAsStmt(OUT_TYPE(CreateTableAsStmt, CreateTableAsStmt) out, const
|
|
|
1214
1269
|
{
|
|
1215
1270
|
WRITE_NODE_PTR_FIELD(query, query, query);
|
|
1216
1271
|
WRITE_SPECIFIC_NODE_PTR_FIELD(IntoClause, into_clause, into, into, into);
|
|
1217
|
-
WRITE_ENUM_FIELD(ObjectType,
|
|
1272
|
+
WRITE_ENUM_FIELD(ObjectType, objtype, objtype, objtype);
|
|
1218
1273
|
WRITE_BOOL_FIELD(is_select_into, is_select_into, is_select_into);
|
|
1219
1274
|
WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
|
|
1220
1275
|
}
|
|
@@ -1262,6 +1317,8 @@ _outDiscardStmt(OUT_TYPE(DiscardStmt, DiscardStmt) out, const DiscardStmt *node)
|
|
|
1262
1317
|
static void
|
|
1263
1318
|
_outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTrigStmt *node)
|
|
1264
1319
|
{
|
|
1320
|
+
WRITE_BOOL_FIELD(replace, replace, replace);
|
|
1321
|
+
WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
|
|
1265
1322
|
WRITE_STRING_FIELD(trigname, trigname, trigname);
|
|
1266
1323
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
1267
1324
|
WRITE_LIST_FIELD(funcname, funcname, funcname);
|
|
@@ -1271,7 +1328,6 @@ _outCreateTrigStmt(OUT_TYPE(CreateTrigStmt, CreateTrigStmt) out, const CreateTri
|
|
|
1271
1328
|
WRITE_INT_FIELD(events, events, events);
|
|
1272
1329
|
WRITE_LIST_FIELD(columns, columns, columns);
|
|
1273
1330
|
WRITE_NODE_PTR_FIELD(when_clause, whenClause, whenClause);
|
|
1274
|
-
WRITE_BOOL_FIELD(isconstraint, isconstraint, isconstraint);
|
|
1275
1331
|
WRITE_LIST_FIELD(transition_rels, transitionRels, transitionRels);
|
|
1276
1332
|
WRITE_BOOL_FIELD(deferrable, deferrable, deferrable);
|
|
1277
1333
|
WRITE_BOOL_FIELD(initdeferred, initdeferred, initdeferred);
|
|
@@ -1333,8 +1389,7 @@ _outReindexStmt(OUT_TYPE(ReindexStmt, ReindexStmt) out, const ReindexStmt *node)
|
|
|
1333
1389
|
WRITE_ENUM_FIELD(ReindexObjectType, kind, kind, kind);
|
|
1334
1390
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
1335
1391
|
WRITE_STRING_FIELD(name, name, name);
|
|
1336
|
-
|
|
1337
|
-
WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
|
|
1392
|
+
WRITE_LIST_FIELD(params, params, params);
|
|
1338
1393
|
}
|
|
1339
1394
|
|
|
1340
1395
|
static void
|
|
@@ -1358,6 +1413,12 @@ _outAlterDatabaseStmt(OUT_TYPE(AlterDatabaseStmt, AlterDatabaseStmt) out, const
|
|
|
1358
1413
|
WRITE_LIST_FIELD(options, options, options);
|
|
1359
1414
|
}
|
|
1360
1415
|
|
|
1416
|
+
static void
|
|
1417
|
+
_outAlterDatabaseRefreshCollStmt(OUT_TYPE(AlterDatabaseRefreshCollStmt, AlterDatabaseRefreshCollStmt) out, const AlterDatabaseRefreshCollStmt *node)
|
|
1418
|
+
{
|
|
1419
|
+
WRITE_STRING_FIELD(dbname, dbname, dbname);
|
|
1420
|
+
}
|
|
1421
|
+
|
|
1361
1422
|
static void
|
|
1362
1423
|
_outAlterDatabaseSetStmt(OUT_TYPE(AlterDatabaseSetStmt, AlterDatabaseSetStmt) out, const AlterDatabaseSetStmt *node)
|
|
1363
1424
|
{
|
|
@@ -1471,7 +1532,7 @@ _outAlterObjectDependsStmt(OUT_TYPE(AlterObjectDependsStmt, AlterObjectDependsSt
|
|
|
1471
1532
|
WRITE_ENUM_FIELD(ObjectType, object_type, objectType, objectType);
|
|
1472
1533
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
1473
1534
|
WRITE_NODE_PTR_FIELD(object, object, object);
|
|
1474
|
-
|
|
1535
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(String, string, extname, extname, extname);
|
|
1475
1536
|
WRITE_BOOL_FIELD(remove, remove, remove);
|
|
1476
1537
|
}
|
|
1477
1538
|
|
|
@@ -1786,7 +1847,7 @@ _outCreatePublicationStmt(OUT_TYPE(CreatePublicationStmt, CreatePublicationStmt)
|
|
|
1786
1847
|
{
|
|
1787
1848
|
WRITE_STRING_FIELD(pubname, pubname, pubname);
|
|
1788
1849
|
WRITE_LIST_FIELD(options, options, options);
|
|
1789
|
-
WRITE_LIST_FIELD(
|
|
1850
|
+
WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects);
|
|
1790
1851
|
WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
|
|
1791
1852
|
}
|
|
1792
1853
|
|
|
@@ -1795,9 +1856,9 @@ _outAlterPublicationStmt(OUT_TYPE(AlterPublicationStmt, AlterPublicationStmt) ou
|
|
|
1795
1856
|
{
|
|
1796
1857
|
WRITE_STRING_FIELD(pubname, pubname, pubname);
|
|
1797
1858
|
WRITE_LIST_FIELD(options, options, options);
|
|
1798
|
-
WRITE_LIST_FIELD(
|
|
1859
|
+
WRITE_LIST_FIELD(pubobjects, pubobjects, pubobjects);
|
|
1799
1860
|
WRITE_BOOL_FIELD(for_all_tables, for_all_tables, for_all_tables);
|
|
1800
|
-
WRITE_ENUM_FIELD(
|
|
1861
|
+
WRITE_ENUM_FIELD(AlterPublicationAction, action, action, action);
|
|
1801
1862
|
}
|
|
1802
1863
|
|
|
1803
1864
|
static void
|
|
@@ -1835,6 +1896,7 @@ _outCreateStatsStmt(OUT_TYPE(CreateStatsStmt, CreateStatsStmt) out, const Create
|
|
|
1835
1896
|
WRITE_LIST_FIELD(exprs, exprs, exprs);
|
|
1836
1897
|
WRITE_LIST_FIELD(relations, relations, relations);
|
|
1837
1898
|
WRITE_STRING_FIELD(stxcomment, stxcomment, stxcomment);
|
|
1899
|
+
WRITE_BOOL_FIELD(transformed, transformed, transformed);
|
|
1838
1900
|
WRITE_BOOL_FIELD(if_not_exists, if_not_exists, if_not_exists);
|
|
1839
1901
|
}
|
|
1840
1902
|
|
|
@@ -1849,6 +1911,7 @@ _outCallStmt(OUT_TYPE(CallStmt, CallStmt) out, const CallStmt *node)
|
|
|
1849
1911
|
{
|
|
1850
1912
|
WRITE_SPECIFIC_NODE_PTR_FIELD(FuncCall, func_call, funccall, funccall, funccall);
|
|
1851
1913
|
WRITE_SPECIFIC_NODE_PTR_FIELD(FuncExpr, func_expr, funcexpr, funcexpr, funcexpr);
|
|
1914
|
+
WRITE_LIST_FIELD(outargs, outargs, outargs);
|
|
1852
1915
|
}
|
|
1853
1916
|
|
|
1854
1917
|
static void
|
|
@@ -1883,13 +1946,6 @@ _outParamRef(OUT_TYPE(ParamRef, ParamRef) out, const ParamRef *node)
|
|
|
1883
1946
|
WRITE_INT_FIELD(location, location, location);
|
|
1884
1947
|
}
|
|
1885
1948
|
|
|
1886
|
-
static void
|
|
1887
|
-
_outAConst(OUT_TYPE(A_Const, AConst) out, const A_Const *node)
|
|
1888
|
-
{
|
|
1889
|
-
WRITE_NODE_FIELD(val, val, val);
|
|
1890
|
-
WRITE_INT_FIELD(location, location, location);
|
|
1891
|
-
}
|
|
1892
|
-
|
|
1893
1949
|
static void
|
|
1894
1950
|
_outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node)
|
|
1895
1951
|
{
|
|
@@ -1897,11 +1953,12 @@ _outFuncCall(OUT_TYPE(FuncCall, FuncCall) out, const FuncCall *node)
|
|
|
1897
1953
|
WRITE_LIST_FIELD(args, args, args);
|
|
1898
1954
|
WRITE_LIST_FIELD(agg_order, agg_order, agg_order);
|
|
1899
1955
|
WRITE_NODE_PTR_FIELD(agg_filter, agg_filter, agg_filter);
|
|
1956
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(WindowDef, window_def, over, over, over);
|
|
1900
1957
|
WRITE_BOOL_FIELD(agg_within_group, agg_within_group, agg_within_group);
|
|
1901
1958
|
WRITE_BOOL_FIELD(agg_star, agg_star, agg_star);
|
|
1902
1959
|
WRITE_BOOL_FIELD(agg_distinct, agg_distinct, agg_distinct);
|
|
1903
1960
|
WRITE_BOOL_FIELD(func_variadic, func_variadic, func_variadic);
|
|
1904
|
-
|
|
1961
|
+
WRITE_ENUM_FIELD(CoercionForm, funcformat, funcformat, funcformat);
|
|
1905
1962
|
WRITE_INT_FIELD(location, location, location);
|
|
1906
1963
|
}
|
|
1907
1964
|
|
|
@@ -2059,6 +2116,7 @@ _outColumnDef(OUT_TYPE(ColumnDef, ColumnDef) out, const ColumnDef *node)
|
|
|
2059
2116
|
{
|
|
2060
2117
|
WRITE_STRING_FIELD(colname, colname, colname);
|
|
2061
2118
|
WRITE_SPECIFIC_NODE_PTR_FIELD(TypeName, type_name, type_name, typeName, typeName);
|
|
2119
|
+
WRITE_STRING_FIELD(compression, compression, compression);
|
|
2062
2120
|
WRITE_INT_FIELD(inhcount, inhcount, inhcount);
|
|
2063
2121
|
WRITE_BOOL_FIELD(is_local, is_local, is_local);
|
|
2064
2122
|
WRITE_BOOL_FIELD(is_not_null, is_not_null, is_not_null);
|
|
@@ -2089,6 +2147,13 @@ _outIndexElem(OUT_TYPE(IndexElem, IndexElem) out, const IndexElem *node)
|
|
|
2089
2147
|
WRITE_ENUM_FIELD(SortByNulls, nulls_ordering, nulls_ordering, nulls_ordering);
|
|
2090
2148
|
}
|
|
2091
2149
|
|
|
2150
|
+
static void
|
|
2151
|
+
_outStatsElem(OUT_TYPE(StatsElem, StatsElem) out, const StatsElem *node)
|
|
2152
|
+
{
|
|
2153
|
+
WRITE_STRING_FIELD(name, name, name);
|
|
2154
|
+
WRITE_NODE_PTR_FIELD(expr, expr, expr);
|
|
2155
|
+
}
|
|
2156
|
+
|
|
2092
2157
|
static void
|
|
2093
2158
|
_outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node)
|
|
2094
2159
|
{
|
|
@@ -2101,6 +2166,7 @@ _outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node)
|
|
|
2101
2166
|
WRITE_NODE_PTR_FIELD(raw_expr, raw_expr, raw_expr);
|
|
2102
2167
|
WRITE_STRING_FIELD(cooked_expr, cooked_expr, cooked_expr);
|
|
2103
2168
|
WRITE_CHAR_FIELD(generated_when, generated_when, generated_when);
|
|
2169
|
+
WRITE_BOOL_FIELD(nulls_not_distinct, nulls_not_distinct, nulls_not_distinct);
|
|
2104
2170
|
WRITE_LIST_FIELD(keys, keys, keys);
|
|
2105
2171
|
WRITE_LIST_FIELD(including, including, including);
|
|
2106
2172
|
WRITE_LIST_FIELD(exclusions, exclusions, exclusions);
|
|
@@ -2116,6 +2182,7 @@ _outConstraint(OUT_TYPE(Constraint, Constraint) out, const Constraint *node)
|
|
|
2116
2182
|
WRITE_CHAR_FIELD(fk_matchtype, fk_matchtype, fk_matchtype);
|
|
2117
2183
|
WRITE_CHAR_FIELD(fk_upd_action, fk_upd_action, fk_upd_action);
|
|
2118
2184
|
WRITE_CHAR_FIELD(fk_del_action, fk_del_action, fk_del_action);
|
|
2185
|
+
WRITE_LIST_FIELD(fk_del_set_cols, fk_del_set_cols, fk_del_set_cols);
|
|
2119
2186
|
WRITE_LIST_FIELD(old_conpfeqop, old_conpfeqop, old_conpfeqop);
|
|
2120
2187
|
WRITE_UINT_FIELD(old_pktable_oid, old_pktable_oid, old_pktable_oid);
|
|
2121
2188
|
WRITE_BOOL_FIELD(skip_validation, skip_validation, skip_validation);
|
|
@@ -2147,6 +2214,7 @@ _outRangeTblEntry(OUT_TYPE(RangeTblEntry, RangeTblEntry) out, const RangeTblEntr
|
|
|
2147
2214
|
WRITE_LIST_FIELD(joinaliasvars, joinaliasvars, joinaliasvars);
|
|
2148
2215
|
WRITE_LIST_FIELD(joinleftcols, joinleftcols, joinleftcols);
|
|
2149
2216
|
WRITE_LIST_FIELD(joinrightcols, joinrightcols, joinrightcols);
|
|
2217
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(Alias, alias, join_using_alias, join_using_alias, join_using_alias);
|
|
2150
2218
|
WRITE_LIST_FIELD(functions, functions, functions);
|
|
2151
2219
|
WRITE_BOOL_FIELD(funcordinality, funcordinality, funcordinality);
|
|
2152
2220
|
WRITE_SPECIFIC_NODE_PTR_FIELD(TableFunc, table_func, tablefunc, tablefunc, tablefunc);
|
|
@@ -2231,6 +2299,7 @@ _outWindowClause(OUT_TYPE(WindowClause, WindowClause) out, const WindowClause *n
|
|
|
2231
2299
|
WRITE_INT_FIELD(frame_options, frameOptions, frameOptions);
|
|
2232
2300
|
WRITE_NODE_PTR_FIELD(start_offset, startOffset, startOffset);
|
|
2233
2301
|
WRITE_NODE_PTR_FIELD(end_offset, endOffset, endOffset);
|
|
2302
|
+
WRITE_LIST_FIELD(run_condition, runCondition, runCondition);
|
|
2234
2303
|
WRITE_UINT_FIELD(start_in_range_func, startInRangeFunc, startInRangeFunc);
|
|
2235
2304
|
WRITE_UINT_FIELD(end_in_range_func, endInRangeFunc, endInRangeFunc);
|
|
2236
2305
|
WRITE_UINT_FIELD(in_range_coll, inRangeColl, inRangeColl);
|
|
@@ -2245,6 +2314,7 @@ _outObjectWithArgs(OUT_TYPE(ObjectWithArgs, ObjectWithArgs) out, const ObjectWit
|
|
|
2245
2314
|
{
|
|
2246
2315
|
WRITE_LIST_FIELD(objname, objname, objname);
|
|
2247
2316
|
WRITE_LIST_FIELD(objargs, objargs, objargs);
|
|
2317
|
+
WRITE_LIST_FIELD(objfuncargs, objfuncargs, objfuncargs);
|
|
2248
2318
|
WRITE_BOOL_FIELD(args_unspecified, args_unspecified, args_unspecified);
|
|
2249
2319
|
}
|
|
2250
2320
|
|
|
@@ -2336,6 +2406,30 @@ _outOnConflictClause(OUT_TYPE(OnConflictClause, OnConflictClause) out, const OnC
|
|
|
2336
2406
|
WRITE_INT_FIELD(location, location, location);
|
|
2337
2407
|
}
|
|
2338
2408
|
|
|
2409
|
+
static void
|
|
2410
|
+
_outCTESearchClause(OUT_TYPE(CTESearchClause, CTESearchClause) out, const CTESearchClause *node)
|
|
2411
|
+
{
|
|
2412
|
+
WRITE_LIST_FIELD(search_col_list, search_col_list, search_col_list);
|
|
2413
|
+
WRITE_BOOL_FIELD(search_breadth_first, search_breadth_first, search_breadth_first);
|
|
2414
|
+
WRITE_STRING_FIELD(search_seq_column, search_seq_column, search_seq_column);
|
|
2415
|
+
WRITE_INT_FIELD(location, location, location);
|
|
2416
|
+
}
|
|
2417
|
+
|
|
2418
|
+
static void
|
|
2419
|
+
_outCTECycleClause(OUT_TYPE(CTECycleClause, CTECycleClause) out, const CTECycleClause *node)
|
|
2420
|
+
{
|
|
2421
|
+
WRITE_LIST_FIELD(cycle_col_list, cycle_col_list, cycle_col_list);
|
|
2422
|
+
WRITE_STRING_FIELD(cycle_mark_column, cycle_mark_column, cycle_mark_column);
|
|
2423
|
+
WRITE_NODE_PTR_FIELD(cycle_mark_value, cycle_mark_value, cycle_mark_value);
|
|
2424
|
+
WRITE_NODE_PTR_FIELD(cycle_mark_default, cycle_mark_default, cycle_mark_default);
|
|
2425
|
+
WRITE_STRING_FIELD(cycle_path_column, cycle_path_column, cycle_path_column);
|
|
2426
|
+
WRITE_INT_FIELD(location, location, location);
|
|
2427
|
+
WRITE_UINT_FIELD(cycle_mark_type, cycle_mark_type, cycle_mark_type);
|
|
2428
|
+
WRITE_INT_FIELD(cycle_mark_typmod, cycle_mark_typmod, cycle_mark_typmod);
|
|
2429
|
+
WRITE_UINT_FIELD(cycle_mark_collation, cycle_mark_collation, cycle_mark_collation);
|
|
2430
|
+
WRITE_UINT_FIELD(cycle_mark_neop, cycle_mark_neop, cycle_mark_neop);
|
|
2431
|
+
}
|
|
2432
|
+
|
|
2339
2433
|
static void
|
|
2340
2434
|
_outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const CommonTableExpr *node)
|
|
2341
2435
|
{
|
|
@@ -2343,6 +2437,8 @@ _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const Common
|
|
|
2343
2437
|
WRITE_LIST_FIELD(aliascolnames, aliascolnames, aliascolnames);
|
|
2344
2438
|
WRITE_ENUM_FIELD(CTEMaterialize, ctematerialized, ctematerialized, ctematerialized);
|
|
2345
2439
|
WRITE_NODE_PTR_FIELD(ctequery, ctequery, ctequery);
|
|
2440
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(CTESearchClause, ctesearch_clause, search_clause, search_clause, search_clause);
|
|
2441
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(CTECycleClause, ctecycle_clause, cycle_clause, cycle_clause, cycle_clause);
|
|
2346
2442
|
WRITE_INT_FIELD(location, location, location);
|
|
2347
2443
|
WRITE_BOOL_FIELD(cterecursive, cterecursive, cterecursive);
|
|
2348
2444
|
WRITE_INT_FIELD(cterefcount, cterefcount, cterefcount);
|
|
@@ -2352,6 +2448,17 @@ _outCommonTableExpr(OUT_TYPE(CommonTableExpr, CommonTableExpr) out, const Common
|
|
|
2352
2448
|
WRITE_LIST_FIELD(ctecolcollations, ctecolcollations, ctecolcollations);
|
|
2353
2449
|
}
|
|
2354
2450
|
|
|
2451
|
+
static void
|
|
2452
|
+
_outMergeWhenClause(OUT_TYPE(MergeWhenClause, MergeWhenClause) out, const MergeWhenClause *node)
|
|
2453
|
+
{
|
|
2454
|
+
WRITE_BOOL_FIELD(matched, matched, matched);
|
|
2455
|
+
WRITE_ENUM_FIELD(CmdType, command_type, commandType, commandType);
|
|
2456
|
+
WRITE_ENUM_FIELD(OverridingKind, override, override, override);
|
|
2457
|
+
WRITE_NODE_PTR_FIELD(condition, condition, condition);
|
|
2458
|
+
WRITE_LIST_FIELD(target_list, targetList, targetList);
|
|
2459
|
+
WRITE_LIST_FIELD(values, values, values);
|
|
2460
|
+
}
|
|
2461
|
+
|
|
2355
2462
|
static void
|
|
2356
2463
|
_outRoleSpec(OUT_TYPE(RoleSpec, RoleSpec) out, const RoleSpec *node)
|
|
2357
2464
|
{
|
|
@@ -2412,6 +2519,7 @@ _outPartitionCmd(OUT_TYPE(PartitionCmd, PartitionCmd) out, const PartitionCmd *n
|
|
|
2412
2519
|
{
|
|
2413
2520
|
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, name, name, name);
|
|
2414
2521
|
WRITE_SPECIFIC_NODE_PTR_FIELD(PartitionBoundSpec, partition_bound_spec, bound, bound, bound);
|
|
2522
|
+
WRITE_BOOL_FIELD(concurrent, concurrent, concurrent);
|
|
2415
2523
|
}
|
|
2416
2524
|
|
|
2417
2525
|
static void
|
|
@@ -2422,6 +2530,23 @@ _outVacuumRelation(OUT_TYPE(VacuumRelation, VacuumRelation) out, const VacuumRel
|
|
|
2422
2530
|
WRITE_LIST_FIELD(va_cols, va_cols, va_cols);
|
|
2423
2531
|
}
|
|
2424
2532
|
|
|
2533
|
+
static void
|
|
2534
|
+
_outPublicationObjSpec(OUT_TYPE(PublicationObjSpec, PublicationObjSpec) out, const PublicationObjSpec *node)
|
|
2535
|
+
{
|
|
2536
|
+
WRITE_ENUM_FIELD(PublicationObjSpecType, pubobjtype, pubobjtype, pubobjtype);
|
|
2537
|
+
WRITE_STRING_FIELD(name, name, name);
|
|
2538
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(PublicationTable, publication_table, pubtable, pubtable, pubtable);
|
|
2539
|
+
WRITE_INT_FIELD(location, location, location);
|
|
2540
|
+
}
|
|
2541
|
+
|
|
2542
|
+
static void
|
|
2543
|
+
_outPublicationTable(OUT_TYPE(PublicationTable, PublicationTable) out, const PublicationTable *node)
|
|
2544
|
+
{
|
|
2545
|
+
WRITE_SPECIFIC_NODE_PTR_FIELD(RangeVar, range_var, relation, relation, relation);
|
|
2546
|
+
WRITE_NODE_PTR_FIELD(where_clause, whereClause, whereClause);
|
|
2547
|
+
WRITE_LIST_FIELD(columns, columns, columns);
|
|
2548
|
+
}
|
|
2549
|
+
|
|
2425
2550
|
static void
|
|
2426
2551
|
_outInlineCodeBlock(OUT_TYPE(InlineCodeBlock, InlineCodeBlock) out, const InlineCodeBlock *node)
|
|
2427
2552
|
{
|