gitlab-pg_query 1.3.1 → 2.0.4
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 +217 -99
- data/README.md +92 -69
- data/Rakefile +85 -5
- data/ext/pg_query/extconf.rb +3 -40
- data/ext/pg_query/guc-file.c +0 -0
- data/ext/pg_query/include/access/amapi.h +246 -0
- data/ext/pg_query/include/access/attmap.h +52 -0
- data/ext/pg_query/include/access/attnum.h +64 -0
- data/ext/pg_query/include/access/clog.h +61 -0
- data/ext/pg_query/include/access/commit_ts.h +77 -0
- data/ext/pg_query/include/access/detoast.h +92 -0
- data/ext/pg_query/include/access/genam.h +228 -0
- data/ext/pg_query/include/access/gin.h +78 -0
- data/ext/pg_query/include/access/htup.h +89 -0
- data/ext/pg_query/include/access/htup_details.h +819 -0
- data/ext/pg_query/include/access/itup.h +161 -0
- data/ext/pg_query/include/access/parallel.h +82 -0
- data/ext/pg_query/include/access/printtup.h +35 -0
- data/ext/pg_query/include/access/relation.h +28 -0
- data/ext/pg_query/include/access/relscan.h +176 -0
- data/ext/pg_query/include/access/rmgr.h +35 -0
- data/ext/pg_query/include/access/rmgrlist.h +49 -0
- data/ext/pg_query/include/access/sdir.h +58 -0
- data/ext/pg_query/include/access/skey.h +151 -0
- data/ext/pg_query/include/access/stratnum.h +83 -0
- data/ext/pg_query/include/access/sysattr.h +29 -0
- data/ext/pg_query/include/access/table.h +27 -0
- data/ext/pg_query/include/access/tableam.h +1825 -0
- data/ext/pg_query/include/access/transam.h +265 -0
- data/ext/pg_query/include/access/tupconvert.h +51 -0
- data/ext/pg_query/include/access/tupdesc.h +154 -0
- data/ext/pg_query/include/access/tupmacs.h +247 -0
- data/ext/pg_query/include/access/twophase.h +61 -0
- data/ext/pg_query/include/access/xact.h +463 -0
- data/ext/pg_query/include/access/xlog.h +398 -0
- data/ext/pg_query/include/access/xlog_internal.h +330 -0
- data/ext/pg_query/include/access/xlogdefs.h +109 -0
- data/ext/pg_query/include/access/xloginsert.h +64 -0
- data/ext/pg_query/include/access/xlogreader.h +327 -0
- data/ext/pg_query/include/access/xlogrecord.h +227 -0
- data/ext/pg_query/include/bootstrap/bootstrap.h +62 -0
- data/ext/pg_query/include/c.h +1322 -0
- data/ext/pg_query/include/catalog/catalog.h +42 -0
- data/ext/pg_query/include/catalog/catversion.h +58 -0
- data/ext/pg_query/include/catalog/dependency.h +275 -0
- data/ext/pg_query/include/catalog/genbki.h +64 -0
- data/ext/pg_query/include/catalog/index.h +199 -0
- data/ext/pg_query/include/catalog/indexing.h +366 -0
- data/ext/pg_query/include/catalog/namespace.h +188 -0
- data/ext/pg_query/include/catalog/objectaccess.h +197 -0
- data/ext/pg_query/include/catalog/objectaddress.h +84 -0
- data/ext/pg_query/include/catalog/pg_aggregate.h +176 -0
- data/ext/pg_query/include/catalog/pg_aggregate_d.h +77 -0
- data/ext/pg_query/include/catalog/pg_am.h +60 -0
- data/ext/pg_query/include/catalog/pg_am_d.h +45 -0
- data/ext/pg_query/include/catalog/pg_attribute.h +204 -0
- data/ext/pg_query/include/catalog/pg_attribute_d.h +59 -0
- data/ext/pg_query/include/catalog/pg_authid.h +58 -0
- data/ext/pg_query/include/catalog/pg_authid_d.h +49 -0
- data/ext/pg_query/include/catalog/pg_class.h +200 -0
- data/ext/pg_query/include/catalog/pg_class_d.h +103 -0
- data/ext/pg_query/include/catalog/pg_collation.h +73 -0
- data/ext/pg_query/include/catalog/pg_collation_d.h +45 -0
- data/ext/pg_query/include/catalog/pg_constraint.h +247 -0
- data/ext/pg_query/include/catalog/pg_constraint_d.h +67 -0
- data/ext/pg_query/include/catalog/pg_control.h +250 -0
- data/ext/pg_query/include/catalog/pg_conversion.h +72 -0
- data/ext/pg_query/include/catalog/pg_conversion_d.h +35 -0
- data/ext/pg_query/include/catalog/pg_depend.h +73 -0
- data/ext/pg_query/include/catalog/pg_depend_d.h +34 -0
- data/ext/pg_query/include/catalog/pg_event_trigger.h +51 -0
- data/ext/pg_query/include/catalog/pg_event_trigger_d.h +34 -0
- data/ext/pg_query/include/catalog/pg_index.h +80 -0
- data/ext/pg_query/include/catalog/pg_index_d.h +56 -0
- data/ext/pg_query/include/catalog/pg_language.h +67 -0
- data/ext/pg_query/include/catalog/pg_language_d.h +39 -0
- data/ext/pg_query/include/catalog/pg_namespace.h +59 -0
- data/ext/pg_query/include/catalog/pg_namespace_d.h +34 -0
- data/ext/pg_query/include/catalog/pg_opclass.h +85 -0
- data/ext/pg_query/include/catalog/pg_opclass_d.h +49 -0
- data/ext/pg_query/include/catalog/pg_operator.h +102 -0
- data/ext/pg_query/include/catalog/pg_operator_d.h +106 -0
- data/ext/pg_query/include/catalog/pg_opfamily.h +60 -0
- data/ext/pg_query/include/catalog/pg_opfamily_d.h +47 -0
- data/ext/pg_query/include/catalog/pg_partitioned_table.h +63 -0
- data/ext/pg_query/include/catalog/pg_partitioned_table_d.h +35 -0
- data/ext/pg_query/include/catalog/pg_proc.h +211 -0
- data/ext/pg_query/include/catalog/pg_proc_d.h +99 -0
- data/ext/pg_query/include/catalog/pg_publication.h +115 -0
- data/ext/pg_query/include/catalog/pg_publication_d.h +36 -0
- data/ext/pg_query/include/catalog/pg_replication_origin.h +57 -0
- data/ext/pg_query/include/catalog/pg_replication_origin_d.h +29 -0
- data/ext/pg_query/include/catalog/pg_statistic.h +275 -0
- data/ext/pg_query/include/catalog/pg_statistic_d.h +194 -0
- data/ext/pg_query/include/catalog/pg_statistic_ext.h +74 -0
- data/ext/pg_query/include/catalog/pg_statistic_ext_d.h +40 -0
- data/ext/pg_query/include/catalog/pg_transform.h +45 -0
- data/ext/pg_query/include/catalog/pg_transform_d.h +32 -0
- data/ext/pg_query/include/catalog/pg_trigger.h +137 -0
- data/ext/pg_query/include/catalog/pg_trigger_d.h +106 -0
- data/ext/pg_query/include/catalog/pg_ts_config.h +50 -0
- data/ext/pg_query/include/catalog/pg_ts_config_d.h +32 -0
- data/ext/pg_query/include/catalog/pg_ts_dict.h +54 -0
- data/ext/pg_query/include/catalog/pg_ts_dict_d.h +33 -0
- data/ext/pg_query/include/catalog/pg_ts_parser.h +57 -0
- data/ext/pg_query/include/catalog/pg_ts_parser_d.h +35 -0
- data/ext/pg_query/include/catalog/pg_ts_template.h +48 -0
- data/ext/pg_query/include/catalog/pg_ts_template_d.h +32 -0
- data/ext/pg_query/include/catalog/pg_type.h +372 -0
- data/ext/pg_query/include/catalog/pg_type_d.h +285 -0
- data/ext/pg_query/include/catalog/storage.h +48 -0
- data/ext/pg_query/include/commands/async.h +54 -0
- data/ext/pg_query/include/commands/dbcommands.h +35 -0
- data/ext/pg_query/include/commands/defrem.h +173 -0
- data/ext/pg_query/include/commands/event_trigger.h +88 -0
- data/ext/pg_query/include/commands/explain.h +127 -0
- data/ext/pg_query/include/commands/prepare.h +61 -0
- data/ext/pg_query/include/commands/tablespace.h +67 -0
- data/ext/pg_query/include/commands/trigger.h +277 -0
- data/ext/pg_query/include/commands/user.h +37 -0
- data/ext/pg_query/include/commands/vacuum.h +293 -0
- data/ext/pg_query/include/commands/variable.h +38 -0
- data/ext/pg_query/include/common/file_perm.h +56 -0
- data/ext/pg_query/include/common/hashfn.h +104 -0
- data/ext/pg_query/include/common/ip.h +37 -0
- data/ext/pg_query/include/common/keywords.h +33 -0
- data/ext/pg_query/include/common/kwlookup.h +44 -0
- data/ext/pg_query/include/common/relpath.h +90 -0
- data/ext/pg_query/include/common/string.h +19 -0
- data/ext/pg_query/include/common/unicode_combining_table.h +196 -0
- data/ext/pg_query/include/datatype/timestamp.h +197 -0
- data/ext/pg_query/include/executor/execdesc.h +70 -0
- data/ext/pg_query/include/executor/executor.h +614 -0
- data/ext/pg_query/include/executor/functions.h +41 -0
- data/ext/pg_query/include/executor/instrument.h +101 -0
- data/ext/pg_query/include/executor/spi.h +175 -0
- data/ext/pg_query/include/executor/tablefunc.h +67 -0
- data/ext/pg_query/include/executor/tuptable.h +487 -0
- data/ext/pg_query/include/fmgr.h +775 -0
- data/ext/pg_query/include/funcapi.h +348 -0
- data/ext/pg_query/include/getaddrinfo.h +162 -0
- data/ext/pg_query/include/jit/jit.h +105 -0
- data/ext/pg_query/include/kwlist_d.h +1072 -0
- data/ext/pg_query/include/lib/ilist.h +727 -0
- data/ext/pg_query/include/lib/pairingheap.h +102 -0
- data/ext/pg_query/include/lib/simplehash.h +1059 -0
- data/ext/pg_query/include/lib/stringinfo.h +161 -0
- data/ext/pg_query/include/libpq/auth.h +29 -0
- data/ext/pg_query/include/libpq/crypt.h +46 -0
- data/ext/pg_query/include/libpq/hba.h +140 -0
- data/ext/pg_query/include/libpq/libpq-be.h +326 -0
- data/ext/pg_query/include/libpq/libpq.h +133 -0
- data/ext/pg_query/include/libpq/pqcomm.h +208 -0
- data/ext/pg_query/include/libpq/pqformat.h +210 -0
- data/ext/pg_query/include/libpq/pqsignal.h +42 -0
- data/ext/pg_query/include/mb/pg_wchar.h +672 -0
- data/ext/pg_query/include/mb/stringinfo_mb.h +24 -0
- data/ext/pg_query/include/miscadmin.h +476 -0
- data/ext/pg_query/include/nodes/bitmapset.h +122 -0
- data/ext/pg_query/include/nodes/execnodes.h +2520 -0
- data/ext/pg_query/include/nodes/extensible.h +160 -0
- data/ext/pg_query/include/nodes/lockoptions.h +61 -0
- data/ext/pg_query/include/nodes/makefuncs.h +108 -0
- data/ext/pg_query/include/nodes/memnodes.h +108 -0
- data/ext/pg_query/include/nodes/nodeFuncs.h +162 -0
- data/ext/pg_query/include/nodes/nodes.h +842 -0
- data/ext/pg_query/include/nodes/params.h +170 -0
- data/ext/pg_query/include/nodes/parsenodes.h +3579 -0
- data/ext/pg_query/include/nodes/pathnodes.h +2556 -0
- data/ext/pg_query/include/nodes/pg_list.h +605 -0
- data/ext/pg_query/include/nodes/plannodes.h +1251 -0
- data/ext/pg_query/include/nodes/primnodes.h +1541 -0
- data/ext/pg_query/include/nodes/print.h +34 -0
- data/ext/pg_query/include/nodes/tidbitmap.h +75 -0
- data/ext/pg_query/include/nodes/value.h +61 -0
- data/ext/pg_query/include/optimizer/cost.h +206 -0
- data/ext/pg_query/include/optimizer/geqo.h +88 -0
- data/ext/pg_query/include/optimizer/geqo_gene.h +45 -0
- data/ext/pg_query/include/optimizer/optimizer.h +199 -0
- data/ext/pg_query/include/optimizer/paths.h +249 -0
- data/ext/pg_query/include/optimizer/planmain.h +119 -0
- data/ext/pg_query/include/parser/analyze.h +49 -0
- data/ext/pg_query/include/parser/gram.h +1067 -0
- data/ext/pg_query/include/parser/gramparse.h +75 -0
- data/ext/pg_query/include/parser/kwlist.h +477 -0
- data/ext/pg_query/include/parser/parse_agg.h +68 -0
- data/ext/pg_query/include/parser/parse_clause.h +54 -0
- data/ext/pg_query/include/parser/parse_coerce.h +97 -0
- data/ext/pg_query/include/parser/parse_collate.h +27 -0
- data/ext/pg_query/include/parser/parse_expr.h +26 -0
- data/ext/pg_query/include/parser/parse_func.h +73 -0
- data/ext/pg_query/include/parser/parse_node.h +327 -0
- data/ext/pg_query/include/parser/parse_oper.h +67 -0
- data/ext/pg_query/include/parser/parse_relation.h +123 -0
- data/ext/pg_query/include/parser/parse_target.h +46 -0
- data/ext/pg_query/include/parser/parse_type.h +60 -0
- data/ext/pg_query/include/parser/parser.h +41 -0
- data/ext/pg_query/include/parser/parsetree.h +61 -0
- data/ext/pg_query/include/parser/scanner.h +152 -0
- data/ext/pg_query/include/parser/scansup.h +30 -0
- data/ext/pg_query/include/partitioning/partdefs.h +26 -0
- data/ext/pg_query/include/pg_config.h +989 -0
- data/ext/pg_query/include/pg_config_ext.h +8 -0
- data/ext/pg_query/include/pg_config_manual.h +350 -0
- data/ext/pg_query/include/pg_config_os.h +8 -0
- data/ext/pg_query/include/pg_getopt.h +56 -0
- data/ext/pg_query/include/pg_query.h +121 -0
- data/ext/pg_query/include/pg_query_enum_defs.c +2454 -0
- data/ext/pg_query/include/pg_query_fingerprint_conds.c +875 -0
- data/ext/pg_query/include/pg_query_fingerprint_defs.c +12413 -0
- data/ext/pg_query/include/pg_query_json_helper.c +61 -0
- data/ext/pg_query/include/pg_query_outfuncs_conds.c +686 -0
- data/ext/pg_query/include/pg_query_outfuncs_defs.c +2437 -0
- data/ext/pg_query/include/pg_query_readfuncs_conds.c +222 -0
- data/ext/pg_query/include/pg_query_readfuncs_defs.c +2878 -0
- data/ext/pg_query/include/pg_trace.h +17 -0
- data/ext/pg_query/include/pgstat.h +1487 -0
- data/ext/pg_query/include/pgtime.h +84 -0
- data/ext/pg_query/include/pl_gram.h +385 -0
- data/ext/pg_query/include/pl_reserved_kwlist.h +52 -0
- data/ext/pg_query/include/pl_reserved_kwlist_d.h +114 -0
- data/ext/pg_query/include/pl_unreserved_kwlist.h +112 -0
- data/ext/pg_query/include/pl_unreserved_kwlist_d.h +246 -0
- data/ext/pg_query/include/plerrcodes.h +990 -0
- data/ext/pg_query/include/plpgsql.h +1347 -0
- data/ext/pg_query/include/port.h +524 -0
- data/ext/pg_query/include/port/atomics.h +524 -0
- data/ext/pg_query/include/port/atomics/arch-arm.h +26 -0
- data/ext/pg_query/include/port/atomics/arch-ppc.h +254 -0
- data/ext/pg_query/include/port/atomics/arch-x86.h +252 -0
- data/ext/pg_query/include/port/atomics/fallback.h +170 -0
- data/ext/pg_query/include/port/atomics/generic-gcc.h +286 -0
- data/ext/pg_query/include/port/atomics/generic.h +401 -0
- data/ext/pg_query/include/port/pg_bitutils.h +226 -0
- data/ext/pg_query/include/port/pg_bswap.h +161 -0
- data/ext/pg_query/include/port/pg_crc32c.h +101 -0
- data/ext/pg_query/include/portability/instr_time.h +256 -0
- data/ext/pg_query/include/postgres.h +764 -0
- data/ext/pg_query/include/postgres_ext.h +74 -0
- data/ext/pg_query/include/postmaster/autovacuum.h +83 -0
- data/ext/pg_query/include/postmaster/bgworker.h +161 -0
- data/ext/pg_query/include/postmaster/bgworker_internals.h +64 -0
- data/ext/pg_query/include/postmaster/bgwriter.h +45 -0
- data/ext/pg_query/include/postmaster/fork_process.h +17 -0
- data/ext/pg_query/include/postmaster/interrupt.h +32 -0
- data/ext/pg_query/include/postmaster/pgarch.h +39 -0
- data/ext/pg_query/include/postmaster/postmaster.h +77 -0
- data/ext/pg_query/include/postmaster/syslogger.h +98 -0
- data/ext/pg_query/include/postmaster/walwriter.h +21 -0
- data/ext/pg_query/include/protobuf-c.h +1106 -0
- data/ext/pg_query/include/protobuf-c/protobuf-c.h +1106 -0
- data/ext/pg_query/include/protobuf/pg_query.pb-c.h +10846 -0
- data/ext/pg_query/include/protobuf/pg_query.pb.h +124718 -0
- data/ext/pg_query/include/regex/regex.h +184 -0
- data/ext/pg_query/include/replication/logicallauncher.h +31 -0
- data/ext/pg_query/include/replication/logicalproto.h +110 -0
- data/ext/pg_query/include/replication/logicalworker.h +19 -0
- data/ext/pg_query/include/replication/origin.h +73 -0
- data/ext/pg_query/include/replication/reorderbuffer.h +467 -0
- data/ext/pg_query/include/replication/slot.h +219 -0
- data/ext/pg_query/include/replication/syncrep.h +115 -0
- data/ext/pg_query/include/replication/walreceiver.h +340 -0
- data/ext/pg_query/include/replication/walsender.h +74 -0
- data/ext/pg_query/include/rewrite/prs2lock.h +46 -0
- data/ext/pg_query/include/rewrite/rewriteHandler.h +40 -0
- data/ext/pg_query/include/rewrite/rewriteManip.h +87 -0
- data/ext/pg_query/include/rewrite/rewriteSupport.h +26 -0
- data/ext/pg_query/include/storage/backendid.h +37 -0
- data/ext/pg_query/include/storage/block.h +121 -0
- data/ext/pg_query/include/storage/buf.h +46 -0
- data/ext/pg_query/include/storage/bufmgr.h +292 -0
- data/ext/pg_query/include/storage/bufpage.h +459 -0
- data/ext/pg_query/include/storage/condition_variable.h +62 -0
- data/ext/pg_query/include/storage/dsm.h +61 -0
- data/ext/pg_query/include/storage/dsm_impl.h +75 -0
- data/ext/pg_query/include/storage/fd.h +168 -0
- data/ext/pg_query/include/storage/ipc.h +81 -0
- data/ext/pg_query/include/storage/item.h +19 -0
- data/ext/pg_query/include/storage/itemid.h +184 -0
- data/ext/pg_query/include/storage/itemptr.h +206 -0
- data/ext/pg_query/include/storage/large_object.h +100 -0
- data/ext/pg_query/include/storage/latch.h +190 -0
- data/ext/pg_query/include/storage/lmgr.h +114 -0
- data/ext/pg_query/include/storage/lock.h +612 -0
- data/ext/pg_query/include/storage/lockdefs.h +59 -0
- data/ext/pg_query/include/storage/lwlock.h +232 -0
- data/ext/pg_query/include/storage/lwlocknames.h +51 -0
- data/ext/pg_query/include/storage/off.h +57 -0
- data/ext/pg_query/include/storage/pg_sema.h +61 -0
- data/ext/pg_query/include/storage/pg_shmem.h +90 -0
- data/ext/pg_query/include/storage/pmsignal.h +94 -0
- data/ext/pg_query/include/storage/predicate.h +87 -0
- data/ext/pg_query/include/storage/proc.h +333 -0
- data/ext/pg_query/include/storage/proclist_types.h +51 -0
- data/ext/pg_query/include/storage/procsignal.h +75 -0
- data/ext/pg_query/include/storage/relfilenode.h +99 -0
- data/ext/pg_query/include/storage/s_lock.h +1047 -0
- data/ext/pg_query/include/storage/sharedfileset.h +45 -0
- data/ext/pg_query/include/storage/shm_mq.h +85 -0
- data/ext/pg_query/include/storage/shm_toc.h +58 -0
- data/ext/pg_query/include/storage/shmem.h +81 -0
- data/ext/pg_query/include/storage/sinval.h +153 -0
- data/ext/pg_query/include/storage/sinvaladt.h +43 -0
- data/ext/pg_query/include/storage/smgr.h +109 -0
- data/ext/pg_query/include/storage/spin.h +77 -0
- data/ext/pg_query/include/storage/standby.h +91 -0
- data/ext/pg_query/include/storage/standbydefs.h +74 -0
- data/ext/pg_query/include/storage/sync.h +62 -0
- data/ext/pg_query/include/tcop/cmdtag.h +58 -0
- data/ext/pg_query/include/tcop/cmdtaglist.h +217 -0
- data/ext/pg_query/include/tcop/deparse_utility.h +108 -0
- data/ext/pg_query/include/tcop/dest.h +149 -0
- data/ext/pg_query/include/tcop/fastpath.h +21 -0
- data/ext/pg_query/include/tcop/pquery.h +45 -0
- data/ext/pg_query/include/tcop/tcopprot.h +89 -0
- data/ext/pg_query/include/tcop/utility.h +108 -0
- data/ext/pg_query/include/tsearch/ts_cache.h +98 -0
- data/ext/pg_query/include/utils/acl.h +312 -0
- data/ext/pg_query/include/utils/aclchk_internal.h +45 -0
- data/ext/pg_query/include/utils/array.h +458 -0
- data/ext/pg_query/include/utils/builtins.h +127 -0
- data/ext/pg_query/include/utils/bytea.h +27 -0
- data/ext/pg_query/include/utils/catcache.h +231 -0
- data/ext/pg_query/include/utils/date.h +90 -0
- data/ext/pg_query/include/utils/datetime.h +343 -0
- data/ext/pg_query/include/utils/datum.h +68 -0
- data/ext/pg_query/include/utils/dsa.h +123 -0
- data/ext/pg_query/include/utils/dynahash.h +19 -0
- data/ext/pg_query/include/utils/elog.h +439 -0
- data/ext/pg_query/include/utils/errcodes.h +352 -0
- data/ext/pg_query/include/utils/expandeddatum.h +159 -0
- data/ext/pg_query/include/utils/expandedrecord.h +231 -0
- data/ext/pg_query/include/utils/float.h +356 -0
- data/ext/pg_query/include/utils/fmgroids.h +2657 -0
- data/ext/pg_query/include/utils/fmgrprotos.h +2646 -0
- data/ext/pg_query/include/utils/fmgrtab.h +48 -0
- data/ext/pg_query/include/utils/guc.h +443 -0
- data/ext/pg_query/include/utils/guc_tables.h +272 -0
- data/ext/pg_query/include/utils/hsearch.h +149 -0
- data/ext/pg_query/include/utils/inval.h +64 -0
- data/ext/pg_query/include/utils/lsyscache.h +197 -0
- data/ext/pg_query/include/utils/memdebug.h +82 -0
- data/ext/pg_query/include/utils/memutils.h +225 -0
- data/ext/pg_query/include/utils/numeric.h +76 -0
- data/ext/pg_query/include/utils/palloc.h +136 -0
- data/ext/pg_query/include/utils/partcache.h +102 -0
- data/ext/pg_query/include/utils/pg_locale.h +119 -0
- data/ext/pg_query/include/utils/pg_lsn.h +29 -0
- data/ext/pg_query/include/utils/pidfile.h +56 -0
- data/ext/pg_query/include/utils/plancache.h +235 -0
- data/ext/pg_query/include/utils/portal.h +241 -0
- data/ext/pg_query/include/utils/probes.h +114 -0
- data/ext/pg_query/include/utils/ps_status.h +25 -0
- data/ext/pg_query/include/utils/queryenvironment.h +74 -0
- data/ext/pg_query/include/utils/regproc.h +28 -0
- data/ext/pg_query/include/utils/rel.h +644 -0
- data/ext/pg_query/include/utils/relcache.h +151 -0
- data/ext/pg_query/include/utils/reltrigger.h +81 -0
- data/ext/pg_query/include/utils/resowner.h +86 -0
- data/ext/pg_query/include/utils/rls.h +50 -0
- data/ext/pg_query/include/utils/ruleutils.h +44 -0
- data/ext/pg_query/include/utils/sharedtuplestore.h +61 -0
- data/ext/pg_query/include/utils/snapmgr.h +158 -0
- data/ext/pg_query/include/utils/snapshot.h +206 -0
- data/ext/pg_query/include/utils/sortsupport.h +276 -0
- data/ext/pg_query/include/utils/syscache.h +219 -0
- data/ext/pg_query/include/utils/timeout.h +88 -0
- data/ext/pg_query/include/utils/timestamp.h +116 -0
- data/ext/pg_query/include/utils/tuplesort.h +277 -0
- data/ext/pg_query/include/utils/tuplestore.h +91 -0
- data/ext/pg_query/include/utils/typcache.h +202 -0
- data/ext/pg_query/include/utils/tzparser.h +39 -0
- data/ext/pg_query/include/utils/varlena.h +39 -0
- data/ext/pg_query/include/utils/xml.h +84 -0
- data/ext/pg_query/include/xxhash.h +5445 -0
- data/ext/pg_query/include/xxhash/xxhash.h +5445 -0
- data/ext/pg_query/pg_query.c +104 -0
- data/ext/pg_query/pg_query.pb-c.c +37628 -0
- data/ext/pg_query/pg_query_deparse.c +9959 -0
- data/ext/pg_query/pg_query_fingerprint.c +295 -0
- data/ext/pg_query/pg_query_fingerprint.h +8 -0
- data/ext/pg_query/pg_query_internal.h +24 -0
- data/ext/pg_query/pg_query_json_plpgsql.c +738 -0
- data/ext/pg_query/pg_query_json_plpgsql.h +9 -0
- data/ext/pg_query/pg_query_normalize.c +439 -0
- data/ext/pg_query/pg_query_outfuncs.h +10 -0
- data/ext/pg_query/pg_query_outfuncs_json.c +297 -0
- data/ext/pg_query/pg_query_outfuncs_protobuf.c +237 -0
- data/ext/pg_query/pg_query_parse.c +148 -0
- data/ext/pg_query/pg_query_parse_plpgsql.c +460 -0
- data/ext/pg_query/pg_query_readfuncs.h +11 -0
- data/ext/pg_query/pg_query_readfuncs_protobuf.c +142 -0
- data/ext/pg_query/pg_query_ruby.c +108 -12
- data/ext/pg_query/pg_query_scan.c +173 -0
- data/ext/pg_query/pg_query_split.c +221 -0
- data/ext/pg_query/protobuf-c.c +3660 -0
- data/ext/pg_query/src_backend_catalog_namespace.c +1051 -0
- data/ext/pg_query/src_backend_catalog_pg_proc.c +142 -0
- data/ext/pg_query/src_backend_commands_define.c +117 -0
- data/ext/pg_query/src_backend_libpq_pqcomm.c +651 -0
- data/ext/pg_query/src_backend_nodes_bitmapset.c +513 -0
- data/ext/pg_query/src_backend_nodes_copyfuncs.c +6013 -0
- data/ext/pg_query/src_backend_nodes_equalfuncs.c +4003 -0
- data/ext/pg_query/src_backend_nodes_extensible.c +99 -0
- data/ext/pg_query/src_backend_nodes_list.c +922 -0
- data/ext/pg_query/src_backend_nodes_makefuncs.c +417 -0
- data/ext/pg_query/src_backend_nodes_nodeFuncs.c +1363 -0
- data/ext/pg_query/src_backend_nodes_value.c +84 -0
- data/ext/pg_query/src_backend_parser_gram.c +47456 -0
- data/ext/pg_query/src_backend_parser_parse_expr.c +313 -0
- data/ext/pg_query/src_backend_parser_parser.c +497 -0
- data/ext/pg_query/src_backend_parser_scan.c +7091 -0
- data/ext/pg_query/src_backend_parser_scansup.c +160 -0
- data/ext/pg_query/src_backend_postmaster_postmaster.c +2230 -0
- data/ext/pg_query/src_backend_storage_ipc_ipc.c +192 -0
- data/ext/pg_query/src_backend_storage_lmgr_s_lock.c +370 -0
- data/ext/pg_query/src_backend_tcop_postgres.c +776 -0
- data/ext/pg_query/src_backend_utils_adt_datum.c +326 -0
- data/ext/pg_query/src_backend_utils_adt_expandeddatum.c +98 -0
- data/ext/pg_query/src_backend_utils_adt_format_type.c +136 -0
- data/ext/pg_query/src_backend_utils_adt_ruleutils.c +1683 -0
- data/ext/pg_query/src_backend_utils_error_assert.c +74 -0
- data/ext/pg_query/src_backend_utils_error_elog.c +1748 -0
- data/ext/pg_query/src_backend_utils_fmgr_fmgr.c +570 -0
- data/ext/pg_query/src_backend_utils_hash_dynahash.c +1086 -0
- data/ext/pg_query/src_backend_utils_init_globals.c +168 -0
- data/ext/pg_query/src_backend_utils_mb_mbutils.c +839 -0
- data/ext/pg_query/src_backend_utils_misc_guc.c +1831 -0
- data/ext/pg_query/src_backend_utils_mmgr_aset.c +1560 -0
- data/ext/pg_query/src_backend_utils_mmgr_mcxt.c +1006 -0
- data/ext/pg_query/src_common_encnames.c +158 -0
- data/ext/pg_query/src_common_keywords.c +39 -0
- data/ext/pg_query/src_common_kwlist_d.h +1081 -0
- data/ext/pg_query/src_common_kwlookup.c +91 -0
- data/ext/pg_query/src_common_psprintf.c +158 -0
- data/ext/pg_query/src_common_string.c +86 -0
- data/ext/pg_query/src_common_stringinfo.c +336 -0
- data/ext/pg_query/src_common_wchar.c +1651 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_comp.c +1133 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_funcs.c +877 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_gram.c +6533 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_handler.c +107 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_reserved_kwlist_d.h +123 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_scanner.c +671 -0
- data/ext/pg_query/src_pl_plpgsql_src_pl_unreserved_kwlist_d.h +255 -0
- data/ext/pg_query/src_port_erand48.c +127 -0
- data/ext/pg_query/src_port_pg_bitutils.c +246 -0
- data/ext/pg_query/src_port_pgsleep.c +69 -0
- data/ext/pg_query/src_port_pgstrcasecmp.c +83 -0
- data/ext/pg_query/src_port_qsort.c +240 -0
- data/ext/pg_query/src_port_random.c +31 -0
- data/ext/pg_query/src_port_snprintf.c +1449 -0
- data/ext/pg_query/src_port_strerror.c +324 -0
- data/ext/pg_query/src_port_strnlen.c +39 -0
- data/ext/pg_query/xxhash.c +43 -0
- data/lib/pg_query.rb +7 -4
- data/lib/pg_query/constants.rb +21 -0
- data/lib/pg_query/deparse.rb +15 -1581
- data/lib/pg_query/filter_columns.rb +88 -85
- data/lib/pg_query/fingerprint.rb +122 -87
- data/lib/pg_query/json_field_names.rb +1402 -0
- data/lib/pg_query/node.rb +31 -0
- data/lib/pg_query/param_refs.rb +42 -37
- data/lib/pg_query/parse.rb +220 -203
- data/lib/pg_query/parse_error.rb +1 -1
- data/lib/pg_query/pg_query_pb.rb +3211 -0
- data/lib/pg_query/scan.rb +23 -0
- data/lib/pg_query/treewalker.rb +24 -40
- data/lib/pg_query/truncate.rb +71 -42
- data/lib/pg_query/version.rb +2 -2
- metadata +472 -11
- data/ext/pg_query/pg_query_ruby.h +0 -10
- data/lib/pg_query/deep_dup.rb +0 -16
- data/lib/pg_query/deparse/alter_table.rb +0 -42
- data/lib/pg_query/deparse/interval.rb +0 -105
- data/lib/pg_query/deparse/keywords.rb +0 -159
- data/lib/pg_query/deparse/rename.rb +0 -41
- data/lib/pg_query/legacy_parsetree.rb +0 -109
- data/lib/pg_query/node_types.rb +0 -296
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_language.h
|
|
4
|
+
* definition of the "language" system catalog (pg_language)
|
|
5
|
+
*
|
|
6
|
+
*
|
|
7
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
8
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
|
+
*
|
|
10
|
+
* src/include/catalog/pg_language.h
|
|
11
|
+
*
|
|
12
|
+
* NOTES
|
|
13
|
+
* The Catalog.pm module reads this file and derives schema
|
|
14
|
+
* information.
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_LANGUAGE_H
|
|
19
|
+
#define PG_LANGUAGE_H
|
|
20
|
+
|
|
21
|
+
#include "catalog/genbki.h"
|
|
22
|
+
#include "catalog/pg_language_d.h"
|
|
23
|
+
|
|
24
|
+
/* ----------------
|
|
25
|
+
* pg_language definition. cpp turns this into
|
|
26
|
+
* typedef struct FormData_pg_language
|
|
27
|
+
* ----------------
|
|
28
|
+
*/
|
|
29
|
+
CATALOG(pg_language,2612,LanguageRelationId)
|
|
30
|
+
{
|
|
31
|
+
Oid oid; /* oid */
|
|
32
|
+
|
|
33
|
+
/* Language name */
|
|
34
|
+
NameData lanname;
|
|
35
|
+
|
|
36
|
+
/* Language's owner */
|
|
37
|
+
Oid lanowner BKI_DEFAULT(PGUID);
|
|
38
|
+
|
|
39
|
+
/* Is a procedural language */
|
|
40
|
+
bool lanispl BKI_DEFAULT(f);
|
|
41
|
+
|
|
42
|
+
/* PL is trusted */
|
|
43
|
+
bool lanpltrusted BKI_DEFAULT(f);
|
|
44
|
+
|
|
45
|
+
/* Call handler, if it's a PL */
|
|
46
|
+
Oid lanplcallfoid BKI_DEFAULT(0) BKI_LOOKUP(pg_proc);
|
|
47
|
+
|
|
48
|
+
/* Optional anonymous-block handler function */
|
|
49
|
+
Oid laninline BKI_DEFAULT(0) BKI_LOOKUP(pg_proc);
|
|
50
|
+
|
|
51
|
+
/* Optional validation function */
|
|
52
|
+
Oid lanvalidator BKI_DEFAULT(0) BKI_LOOKUP(pg_proc);
|
|
53
|
+
|
|
54
|
+
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
|
55
|
+
/* Access privileges */
|
|
56
|
+
aclitem lanacl[1] BKI_DEFAULT(_null_);
|
|
57
|
+
#endif
|
|
58
|
+
} FormData_pg_language;
|
|
59
|
+
|
|
60
|
+
/* ----------------
|
|
61
|
+
* Form_pg_language corresponds to a pointer to a tuple with
|
|
62
|
+
* the format of pg_language relation.
|
|
63
|
+
* ----------------
|
|
64
|
+
*/
|
|
65
|
+
typedef FormData_pg_language *Form_pg_language;
|
|
66
|
+
|
|
67
|
+
#endif /* PG_LANGUAGE_H */
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_language_d.h
|
|
4
|
+
* Macro definitions for pg_language
|
|
5
|
+
*
|
|
6
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
|
+
*
|
|
9
|
+
* NOTES
|
|
10
|
+
* ******************************
|
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
|
12
|
+
* ******************************
|
|
13
|
+
*
|
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_LANGUAGE_D_H
|
|
19
|
+
#define PG_LANGUAGE_D_H
|
|
20
|
+
|
|
21
|
+
#define LanguageRelationId 2612
|
|
22
|
+
|
|
23
|
+
#define Anum_pg_language_oid 1
|
|
24
|
+
#define Anum_pg_language_lanname 2
|
|
25
|
+
#define Anum_pg_language_lanowner 3
|
|
26
|
+
#define Anum_pg_language_lanispl 4
|
|
27
|
+
#define Anum_pg_language_lanpltrusted 5
|
|
28
|
+
#define Anum_pg_language_lanplcallfoid 6
|
|
29
|
+
#define Anum_pg_language_laninline 7
|
|
30
|
+
#define Anum_pg_language_lanvalidator 8
|
|
31
|
+
#define Anum_pg_language_lanacl 9
|
|
32
|
+
|
|
33
|
+
#define Natts_pg_language 9
|
|
34
|
+
|
|
35
|
+
#define INTERNALlanguageId 12
|
|
36
|
+
#define ClanguageId 13
|
|
37
|
+
#define SQLlanguageId 14
|
|
38
|
+
|
|
39
|
+
#endif /* PG_LANGUAGE_D_H */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_namespace.h
|
|
4
|
+
* definition of the "namespace" system catalog (pg_namespace)
|
|
5
|
+
*
|
|
6
|
+
*
|
|
7
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
8
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
|
+
*
|
|
10
|
+
* src/include/catalog/pg_namespace.h
|
|
11
|
+
*
|
|
12
|
+
* NOTES
|
|
13
|
+
* The Catalog.pm module reads this file and derives schema
|
|
14
|
+
* information.
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_NAMESPACE_H
|
|
19
|
+
#define PG_NAMESPACE_H
|
|
20
|
+
|
|
21
|
+
#include "catalog/genbki.h"
|
|
22
|
+
#include "catalog/pg_namespace_d.h"
|
|
23
|
+
#include "utils/acl.h"
|
|
24
|
+
|
|
25
|
+
/* ----------------------------------------------------------------
|
|
26
|
+
* pg_namespace definition.
|
|
27
|
+
*
|
|
28
|
+
* cpp turns this into typedef struct FormData_pg_namespace
|
|
29
|
+
*
|
|
30
|
+
* nspname name of the namespace
|
|
31
|
+
* nspowner owner (creator) of the namespace
|
|
32
|
+
* nspacl access privilege list
|
|
33
|
+
* ----------------------------------------------------------------
|
|
34
|
+
*/
|
|
35
|
+
CATALOG(pg_namespace,2615,NamespaceRelationId)
|
|
36
|
+
{
|
|
37
|
+
Oid oid; /* oid */
|
|
38
|
+
|
|
39
|
+
NameData nspname;
|
|
40
|
+
Oid nspowner;
|
|
41
|
+
|
|
42
|
+
#ifdef CATALOG_VARLEN /* variable-length fields start here */
|
|
43
|
+
aclitem nspacl[1];
|
|
44
|
+
#endif
|
|
45
|
+
} FormData_pg_namespace;
|
|
46
|
+
|
|
47
|
+
/* ----------------
|
|
48
|
+
* Form_pg_namespace corresponds to a pointer to a tuple with
|
|
49
|
+
* the format of pg_namespace relation.
|
|
50
|
+
* ----------------
|
|
51
|
+
*/
|
|
52
|
+
typedef FormData_pg_namespace *Form_pg_namespace;
|
|
53
|
+
|
|
54
|
+
/*
|
|
55
|
+
* prototypes for functions in pg_namespace.c
|
|
56
|
+
*/
|
|
57
|
+
extern Oid NamespaceCreate(const char *nspName, Oid ownerId, bool isTemp);
|
|
58
|
+
|
|
59
|
+
#endif /* PG_NAMESPACE_H */
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_namespace_d.h
|
|
4
|
+
* Macro definitions for pg_namespace
|
|
5
|
+
*
|
|
6
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
|
+
*
|
|
9
|
+
* NOTES
|
|
10
|
+
* ******************************
|
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
|
12
|
+
* ******************************
|
|
13
|
+
*
|
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_NAMESPACE_D_H
|
|
19
|
+
#define PG_NAMESPACE_D_H
|
|
20
|
+
|
|
21
|
+
#define NamespaceRelationId 2615
|
|
22
|
+
|
|
23
|
+
#define Anum_pg_namespace_oid 1
|
|
24
|
+
#define Anum_pg_namespace_nspname 2
|
|
25
|
+
#define Anum_pg_namespace_nspowner 3
|
|
26
|
+
#define Anum_pg_namespace_nspacl 4
|
|
27
|
+
|
|
28
|
+
#define Natts_pg_namespace 4
|
|
29
|
+
|
|
30
|
+
#define PG_CATALOG_NAMESPACE 11
|
|
31
|
+
#define PG_TOAST_NAMESPACE 99
|
|
32
|
+
#define PG_PUBLIC_NAMESPACE 2200
|
|
33
|
+
|
|
34
|
+
#endif /* PG_NAMESPACE_D_H */
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_opclass.h
|
|
4
|
+
* definition of the "operator class" system catalog (pg_opclass)
|
|
5
|
+
*
|
|
6
|
+
* The primary key for this table is <opcmethod, opcname, opcnamespace> ---
|
|
7
|
+
* that is, there is a row for each valid combination of opclass name and
|
|
8
|
+
* index access method type. This row specifies the expected input data type
|
|
9
|
+
* for the opclass (the type of the heap column, or the expression output type
|
|
10
|
+
* in the case of an index expression). Note that types binary-coercible to
|
|
11
|
+
* the specified type will be accepted too.
|
|
12
|
+
*
|
|
13
|
+
* For a given <opcmethod, opcintype> pair, there can be at most one row that
|
|
14
|
+
* has opcdefault = true; this row is the default opclass for such data in
|
|
15
|
+
* such an index. (This is not currently enforced by an index, because we
|
|
16
|
+
* don't support partial indexes on system catalogs.)
|
|
17
|
+
*
|
|
18
|
+
* Normally opckeytype = InvalidOid (zero), indicating that the data stored
|
|
19
|
+
* in the index is the same as the data in the indexed column. If opckeytype
|
|
20
|
+
* is nonzero then it indicates that a conversion step is needed to produce
|
|
21
|
+
* the stored index data, which will be of type opckeytype (which might be
|
|
22
|
+
* the same or different from the input datatype). Performing such a
|
|
23
|
+
* conversion is the responsibility of the index access method --- not all
|
|
24
|
+
* AMs support this.
|
|
25
|
+
*
|
|
26
|
+
*
|
|
27
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
28
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
29
|
+
*
|
|
30
|
+
* src/include/catalog/pg_opclass.h
|
|
31
|
+
*
|
|
32
|
+
* NOTES
|
|
33
|
+
* The Catalog.pm module reads this file and derives schema
|
|
34
|
+
* information.
|
|
35
|
+
*
|
|
36
|
+
*-------------------------------------------------------------------------
|
|
37
|
+
*/
|
|
38
|
+
#ifndef PG_OPCLASS_H
|
|
39
|
+
#define PG_OPCLASS_H
|
|
40
|
+
|
|
41
|
+
#include "catalog/genbki.h"
|
|
42
|
+
#include "catalog/pg_opclass_d.h"
|
|
43
|
+
|
|
44
|
+
/* ----------------
|
|
45
|
+
* pg_opclass definition. cpp turns this into
|
|
46
|
+
* typedef struct FormData_pg_opclass
|
|
47
|
+
* ----------------
|
|
48
|
+
*/
|
|
49
|
+
CATALOG(pg_opclass,2616,OperatorClassRelationId)
|
|
50
|
+
{
|
|
51
|
+
Oid oid; /* oid */
|
|
52
|
+
|
|
53
|
+
/* index access method opclass is for */
|
|
54
|
+
Oid opcmethod BKI_LOOKUP(pg_am);
|
|
55
|
+
|
|
56
|
+
/* name of this opclass */
|
|
57
|
+
NameData opcname;
|
|
58
|
+
|
|
59
|
+
/* namespace of this opclass */
|
|
60
|
+
Oid opcnamespace BKI_DEFAULT(PGNSP);
|
|
61
|
+
|
|
62
|
+
/* opclass owner */
|
|
63
|
+
Oid opcowner BKI_DEFAULT(PGUID);
|
|
64
|
+
|
|
65
|
+
/* containing operator family */
|
|
66
|
+
Oid opcfamily BKI_LOOKUP(pg_opfamily);
|
|
67
|
+
|
|
68
|
+
/* type of data indexed by opclass */
|
|
69
|
+
Oid opcintype BKI_LOOKUP(pg_type);
|
|
70
|
+
|
|
71
|
+
/* T if opclass is default for opcintype */
|
|
72
|
+
bool opcdefault BKI_DEFAULT(t);
|
|
73
|
+
|
|
74
|
+
/* type of data in index, or InvalidOid */
|
|
75
|
+
Oid opckeytype BKI_DEFAULT(0) BKI_LOOKUP(pg_type);
|
|
76
|
+
} FormData_pg_opclass;
|
|
77
|
+
|
|
78
|
+
/* ----------------
|
|
79
|
+
* Form_pg_opclass corresponds to a pointer to a tuple with
|
|
80
|
+
* the format of pg_opclass relation.
|
|
81
|
+
* ----------------
|
|
82
|
+
*/
|
|
83
|
+
typedef FormData_pg_opclass *Form_pg_opclass;
|
|
84
|
+
|
|
85
|
+
#endif /* PG_OPCLASS_H */
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_opclass_d.h
|
|
4
|
+
* Macro definitions for pg_opclass
|
|
5
|
+
*
|
|
6
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
|
+
*
|
|
9
|
+
* NOTES
|
|
10
|
+
* ******************************
|
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
|
12
|
+
* ******************************
|
|
13
|
+
*
|
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_OPCLASS_D_H
|
|
19
|
+
#define PG_OPCLASS_D_H
|
|
20
|
+
|
|
21
|
+
#define OperatorClassRelationId 2616
|
|
22
|
+
|
|
23
|
+
#define Anum_pg_opclass_oid 1
|
|
24
|
+
#define Anum_pg_opclass_opcmethod 2
|
|
25
|
+
#define Anum_pg_opclass_opcname 3
|
|
26
|
+
#define Anum_pg_opclass_opcnamespace 4
|
|
27
|
+
#define Anum_pg_opclass_opcowner 5
|
|
28
|
+
#define Anum_pg_opclass_opcfamily 6
|
|
29
|
+
#define Anum_pg_opclass_opcintype 7
|
|
30
|
+
#define Anum_pg_opclass_opcdefault 8
|
|
31
|
+
#define Anum_pg_opclass_opckeytype 9
|
|
32
|
+
|
|
33
|
+
#define Natts_pg_opclass 9
|
|
34
|
+
|
|
35
|
+
#define DATE_BTREE_OPS_OID 3122
|
|
36
|
+
#define FLOAT8_BTREE_OPS_OID 3123
|
|
37
|
+
#define INT2_BTREE_OPS_OID 1979
|
|
38
|
+
#define INT4_BTREE_OPS_OID 1978
|
|
39
|
+
#define INT8_BTREE_OPS_OID 3124
|
|
40
|
+
#define NUMERIC_BTREE_OPS_OID 3125
|
|
41
|
+
#define OID_BTREE_OPS_OID 1981
|
|
42
|
+
#define TEXT_BTREE_OPS_OID 3126
|
|
43
|
+
#define TIMESTAMPTZ_BTREE_OPS_OID 3127
|
|
44
|
+
#define TIMESTAMP_BTREE_OPS_OID 3128
|
|
45
|
+
#define TEXT_BTREE_PATTERN_OPS_OID 4217
|
|
46
|
+
#define VARCHAR_BTREE_PATTERN_OPS_OID 4218
|
|
47
|
+
#define BPCHAR_BTREE_PATTERN_OPS_OID 4219
|
|
48
|
+
|
|
49
|
+
#endif /* PG_OPCLASS_D_H */
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_operator.h
|
|
4
|
+
* definition of the "operator" system catalog (pg_operator)
|
|
5
|
+
*
|
|
6
|
+
*
|
|
7
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
8
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
9
|
+
*
|
|
10
|
+
* src/include/catalog/pg_operator.h
|
|
11
|
+
*
|
|
12
|
+
* NOTES
|
|
13
|
+
* The Catalog.pm module reads this file and derives schema
|
|
14
|
+
* information.
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_OPERATOR_H
|
|
19
|
+
#define PG_OPERATOR_H
|
|
20
|
+
|
|
21
|
+
#include "catalog/genbki.h"
|
|
22
|
+
#include "catalog/objectaddress.h"
|
|
23
|
+
#include "catalog/pg_operator_d.h"
|
|
24
|
+
#include "nodes/pg_list.h"
|
|
25
|
+
|
|
26
|
+
/* ----------------
|
|
27
|
+
* pg_operator definition. cpp turns this into
|
|
28
|
+
* typedef struct FormData_pg_operator
|
|
29
|
+
* ----------------
|
|
30
|
+
*/
|
|
31
|
+
CATALOG(pg_operator,2617,OperatorRelationId)
|
|
32
|
+
{
|
|
33
|
+
Oid oid; /* oid */
|
|
34
|
+
|
|
35
|
+
/* name of operator */
|
|
36
|
+
NameData oprname;
|
|
37
|
+
|
|
38
|
+
/* OID of namespace containing this oper */
|
|
39
|
+
Oid oprnamespace BKI_DEFAULT(PGNSP);
|
|
40
|
+
|
|
41
|
+
/* operator owner */
|
|
42
|
+
Oid oprowner BKI_DEFAULT(PGUID);
|
|
43
|
+
|
|
44
|
+
/* 'l', 'r', or 'b' */
|
|
45
|
+
char oprkind BKI_DEFAULT(b);
|
|
46
|
+
|
|
47
|
+
/* can be used in merge join? */
|
|
48
|
+
bool oprcanmerge BKI_DEFAULT(f);
|
|
49
|
+
|
|
50
|
+
/* can be used in hash join? */
|
|
51
|
+
bool oprcanhash BKI_DEFAULT(f);
|
|
52
|
+
|
|
53
|
+
/* left arg type, or 0 if 'l' oprkind */
|
|
54
|
+
Oid oprleft BKI_LOOKUP(pg_type);
|
|
55
|
+
|
|
56
|
+
/* right arg type, or 0 if 'r' oprkind */
|
|
57
|
+
Oid oprright BKI_LOOKUP(pg_type);
|
|
58
|
+
|
|
59
|
+
/* result datatype */
|
|
60
|
+
Oid oprresult BKI_LOOKUP(pg_type);
|
|
61
|
+
|
|
62
|
+
/* OID of commutator oper, or 0 if none */
|
|
63
|
+
Oid oprcom BKI_DEFAULT(0) BKI_LOOKUP(pg_operator);
|
|
64
|
+
|
|
65
|
+
/* OID of negator oper, or 0 if none */
|
|
66
|
+
Oid oprnegate BKI_DEFAULT(0) BKI_LOOKUP(pg_operator);
|
|
67
|
+
|
|
68
|
+
/* OID of underlying function */
|
|
69
|
+
regproc oprcode BKI_LOOKUP(pg_proc);
|
|
70
|
+
|
|
71
|
+
/* OID of restriction estimator, or 0 */
|
|
72
|
+
regproc oprrest BKI_DEFAULT(-) BKI_LOOKUP(pg_proc);
|
|
73
|
+
|
|
74
|
+
/* OID of join estimator, or 0 */
|
|
75
|
+
regproc oprjoin BKI_DEFAULT(-) BKI_LOOKUP(pg_proc);
|
|
76
|
+
} FormData_pg_operator;
|
|
77
|
+
|
|
78
|
+
/* ----------------
|
|
79
|
+
* Form_pg_operator corresponds to a pointer to a tuple with
|
|
80
|
+
* the format of pg_operator relation.
|
|
81
|
+
* ----------------
|
|
82
|
+
*/
|
|
83
|
+
typedef FormData_pg_operator *Form_pg_operator;
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
extern ObjectAddress OperatorCreate(const char *operatorName,
|
|
87
|
+
Oid operatorNamespace,
|
|
88
|
+
Oid leftTypeId,
|
|
89
|
+
Oid rightTypeId,
|
|
90
|
+
Oid procedureId,
|
|
91
|
+
List *commutatorName,
|
|
92
|
+
List *negatorName,
|
|
93
|
+
Oid restrictionId,
|
|
94
|
+
Oid joinId,
|
|
95
|
+
bool canMerge,
|
|
96
|
+
bool canHash);
|
|
97
|
+
|
|
98
|
+
extern ObjectAddress makeOperatorDependencies(HeapTuple tuple, bool isUpdate);
|
|
99
|
+
|
|
100
|
+
extern void OperatorUpd(Oid baseId, Oid commId, Oid negId, bool isDelete);
|
|
101
|
+
|
|
102
|
+
#endif /* PG_OPERATOR_H */
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/*-------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* pg_operator_d.h
|
|
4
|
+
* Macro definitions for pg_operator
|
|
5
|
+
*
|
|
6
|
+
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
|
|
7
|
+
* Portions Copyright (c) 1994, Regents of the University of California
|
|
8
|
+
*
|
|
9
|
+
* NOTES
|
|
10
|
+
* ******************************
|
|
11
|
+
* *** DO NOT EDIT THIS FILE! ***
|
|
12
|
+
* ******************************
|
|
13
|
+
*
|
|
14
|
+
* It has been GENERATED by src/backend/catalog/genbki.pl
|
|
15
|
+
*
|
|
16
|
+
*-------------------------------------------------------------------------
|
|
17
|
+
*/
|
|
18
|
+
#ifndef PG_OPERATOR_D_H
|
|
19
|
+
#define PG_OPERATOR_D_H
|
|
20
|
+
|
|
21
|
+
#define OperatorRelationId 2617
|
|
22
|
+
|
|
23
|
+
#define Anum_pg_operator_oid 1
|
|
24
|
+
#define Anum_pg_operator_oprname 2
|
|
25
|
+
#define Anum_pg_operator_oprnamespace 3
|
|
26
|
+
#define Anum_pg_operator_oprowner 4
|
|
27
|
+
#define Anum_pg_operator_oprkind 5
|
|
28
|
+
#define Anum_pg_operator_oprcanmerge 6
|
|
29
|
+
#define Anum_pg_operator_oprcanhash 7
|
|
30
|
+
#define Anum_pg_operator_oprleft 8
|
|
31
|
+
#define Anum_pg_operator_oprright 9
|
|
32
|
+
#define Anum_pg_operator_oprresult 10
|
|
33
|
+
#define Anum_pg_operator_oprcom 11
|
|
34
|
+
#define Anum_pg_operator_oprnegate 12
|
|
35
|
+
#define Anum_pg_operator_oprcode 13
|
|
36
|
+
#define Anum_pg_operator_oprrest 14
|
|
37
|
+
#define Anum_pg_operator_oprjoin 15
|
|
38
|
+
|
|
39
|
+
#define Natts_pg_operator 15
|
|
40
|
+
|
|
41
|
+
#define BooleanNotEqualOperator 85
|
|
42
|
+
#define BooleanEqualOperator 91
|
|
43
|
+
#define Int4EqualOperator 96
|
|
44
|
+
#define Int4LessOperator 97
|
|
45
|
+
#define TextEqualOperator 98
|
|
46
|
+
#define NameEqualTextOperator 254
|
|
47
|
+
#define NameLessTextOperator 255
|
|
48
|
+
#define NameGreaterEqualTextOperator 257
|
|
49
|
+
#define TIDEqualOperator 387
|
|
50
|
+
#define TIDLessOperator 2799
|
|
51
|
+
#define Int8LessOperator 412
|
|
52
|
+
#define OID_NAME_REGEXEQ_OP 639
|
|
53
|
+
#define OID_TEXT_REGEXEQ_OP 641
|
|
54
|
+
#define TextLessOperator 664
|
|
55
|
+
#define TextGreaterEqualOperator 667
|
|
56
|
+
#define Float8LessOperator 672
|
|
57
|
+
#define BpcharEqualOperator 1054
|
|
58
|
+
#define OID_BPCHAR_REGEXEQ_OP 1055
|
|
59
|
+
#define BpcharLessOperator 1058
|
|
60
|
+
#define BpcharGreaterEqualOperator 1061
|
|
61
|
+
#define ARRAY_EQ_OP 1070
|
|
62
|
+
#define ARRAY_LT_OP 1072
|
|
63
|
+
#define ARRAY_GT_OP 1073
|
|
64
|
+
#define OID_NAME_LIKE_OP 1207
|
|
65
|
+
#define OID_TEXT_LIKE_OP 1209
|
|
66
|
+
#define OID_BPCHAR_LIKE_OP 1211
|
|
67
|
+
#define OID_NAME_ICREGEXEQ_OP 1226
|
|
68
|
+
#define OID_TEXT_ICREGEXEQ_OP 1228
|
|
69
|
+
#define OID_BPCHAR_ICREGEXEQ_OP 1234
|
|
70
|
+
#define OID_INET_SUB_OP 931
|
|
71
|
+
#define OID_INET_SUBEQ_OP 932
|
|
72
|
+
#define OID_INET_SUP_OP 933
|
|
73
|
+
#define OID_INET_SUPEQ_OP 934
|
|
74
|
+
#define OID_INET_OVERLAP_OP 3552
|
|
75
|
+
#define OID_NAME_ICLIKE_OP 1625
|
|
76
|
+
#define OID_TEXT_ICLIKE_OP 1627
|
|
77
|
+
#define OID_BPCHAR_ICLIKE_OP 1629
|
|
78
|
+
#define ByteaEqualOperator 1955
|
|
79
|
+
#define ByteaLessOperator 1957
|
|
80
|
+
#define ByteaGreaterEqualOperator 1960
|
|
81
|
+
#define OID_BYTEA_LIKE_OP 2016
|
|
82
|
+
#define TextPatternLessOperator 2314
|
|
83
|
+
#define TextPatternGreaterEqualOperator 2317
|
|
84
|
+
#define BpcharPatternLessOperator 2326
|
|
85
|
+
#define BpcharPatternGreaterEqualOperator 2329
|
|
86
|
+
#define OID_ARRAY_OVERLAP_OP 2750
|
|
87
|
+
#define OID_ARRAY_CONTAINS_OP 2751
|
|
88
|
+
#define OID_ARRAY_CONTAINED_OP 2752
|
|
89
|
+
#define RECORD_EQ_OP 2988
|
|
90
|
+
#define RECORD_LT_OP 2990
|
|
91
|
+
#define RECORD_GT_OP 2991
|
|
92
|
+
#define OID_RANGE_LESS_OP 3884
|
|
93
|
+
#define OID_RANGE_LESS_EQUAL_OP 3885
|
|
94
|
+
#define OID_RANGE_GREATER_EQUAL_OP 3886
|
|
95
|
+
#define OID_RANGE_GREATER_OP 3887
|
|
96
|
+
#define OID_RANGE_OVERLAP_OP 3888
|
|
97
|
+
#define OID_RANGE_CONTAINS_ELEM_OP 3889
|
|
98
|
+
#define OID_RANGE_CONTAINS_OP 3890
|
|
99
|
+
#define OID_RANGE_ELEM_CONTAINED_OP 3891
|
|
100
|
+
#define OID_RANGE_CONTAINED_OP 3892
|
|
101
|
+
#define OID_RANGE_LEFT_OP 3893
|
|
102
|
+
#define OID_RANGE_RIGHT_OP 3894
|
|
103
|
+
#define OID_RANGE_OVERLAPS_LEFT_OP 3895
|
|
104
|
+
#define OID_RANGE_OVERLAPS_RIGHT_OP 3896
|
|
105
|
+
|
|
106
|
+
#endif /* PG_OPERATOR_D_H */
|